返回匿名类型的简单方法(使使用 LINQ 的 MVC 成为可能)

2023-11-23

我想在使用 LINQ(特别是 LINQ-to-entities)的同时实现 MVC。我这样做的方法是让控制器使用 LINQ 生成(或调用生成的东西)结果集,然后将其返回到视图以显示数据。问题是,如果我这样做:

return (from o in myTable select o);

All这些列是从数据库中读取的,即使是我不想要的列(可能有几十个)。而且 - 更重要的是 - 我can't做这样的事情:

return (from o in myTable select new { o.column });

因为没有办法使匿名类型类型安全!我确信在 3.5 中没有好的、干净的方法来做到这一点(this不干净...),但4.0呢?有什么计划,甚至提议吗?如果没有像 duck-typing-for-LINQ 这样的东西,或者类型安全的匿名返回值(在我看来,编译器当然应该能够做到这一点),那么将控制器与视图完全分离似乎几乎是不可能的。


使用视图模型层。您的视图必须知道它将显示什么。我猜想创建一个仅格式化多维数据数组的视图是可能的,但这并不是采用 MVC 解决方案的最佳理由。但是,您可以使用匿名对象填充视图模型,以便在视图中使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

返回匿名类型的简单方法(使使用 LINQ 的 MVC 成为可能) 的相关文章

  • 显示 div 内的用户名列表

    我是 jQuery 新手 在我的项目中 我创建了一个类User其中代码如下所示 static ConcurrentDictionary
  • C++ 中的“int”默认是“signed long int”吗?

    Is int默认情况下signed long int in C 它是否依赖于平台和 或编译器 如果是这样 怎么办 EDIT 以下任何一项是否保证是重复的 signed short int signed int signed long int
  • C# - Visual Studio 中的 System.OutOfMemoryException

    我遇到问题 当我右键单击 Visual Studio 中的主窗体并转到 视图设计器 时 出现错误 它说 引发了 System OutOfMemoryException 类型的异常 堆栈跟踪 at System Reflection Asse
  • 无需登录即可在 Intranet 上获取 Web 应用程序的域\用户名

    我的 Intranet 上有一个 Web 应用程序 VS 2005 有几个页面不需要用户登录应用程序 反馈和默认页面 我正在尝试获取要显示和 或发送反馈的域名和用户名 有没有一种方法可以在不需要用户登录的情况下执行此操作 我试过了this
  • BufferBlock 连续

    我想使用以下方式实现消费者 生产者模式BufferBlock
  • 静态 OpenCV 库中未定义的引用

    我有一个使用 OpenCV 3 1 的 C 项目 并且使用共享库可以正常工作 但现在我想使用静态库 位于项目目录中的文件夹中 来编译它 因为我希望能够在未安装 OpenCV 的情况下导出它 如果需要还可以编辑和重新编译 这次我重新编译了 O
  • 如何部署包含第三方 DLL 文件的 C# 应用程序?

    首先 我对部署了解不多 我希望我的问题有意义 我需要将 C 应用程序安装 部署到多个桌面 它需要一个第三方 DLL 文件 一个 C 库 lpsolve55 dll 对于那些感兴趣的人 它是一个免费的 MIP LP 求解器 请参阅 lpsol
  • 尽管浮点数相同,但它们并不相等? [复制]

    这个问题在这里已经有答案了 下面的程序输出This No is not same 当两个数字相同时为什么会这样做 void main float f 2 7 if f 2 7 printf This No is same else prin
  • C语言中没有循环可以打印数组吗?

    例如 在Python中 如果我们将一个列表作为数组 它会直接用一行代码打印整个数组 有什么办法可以用C语言实现同样的事情吗 简短回答 No 对表格上几乎所有问题的简短回答 用 C 语言做 X 工作能像用 Python 一样简单吗 No 长答
  • c 使用 lseek 以相反顺序复制文件

    我已经知道如何从一开始就将一个文件复制到另一个文件 但是我如何修改程序以按相反的顺序复制它 源文件应具有读取访问权限 目标文件应具有读写执行权限 我必须使用文件控制库 例如 FILE A File B should be ABCDEF FE
  • 使用默认行为将模型绑定到接口

    我正在尝试将控制器操作绑定到接口 但仍保持默认的绑定行为 public class CoolClass ISomeInterface public DoSomething get set ISomeInterface public clas
  • 打开位置设置页面或提示用户启用位置

    我一直在绞尽脑汁 徒劳地谷歌搜索 我正在尝试找到一种方法来提示用户通过直接进入设置页面或仅点击屏幕上的 是 来切换位置 我见过的所有代码似乎都不起作用 有人有有效的方法吗 一个详细的例子将不胜感激 谢谢 我对 Xamarin 开发非常陌生
  • Kendo Grid 内联编辑中的多选列表

    我需要在剑道网格 内联编辑 中使用多选列表 以便用户可以从每行列表中选择多个值 以下是我的要求 显示时 剑道网格应显示所有选定值的逗号分隔列表 添加时 剑道网格应显示多选列表并允许选择多个值 编辑时 剑道网格应显示具有已选择值的多选列表 用
  • 从 Golang 调用 C 函数

    我想在 Golang 中编写控制器逻辑并处理 json 和数据库 同时在 C 中使用我的数学处理模型 在我看来 调用 C 函数的开销必须尽可能低 就像设置寄存器 rcx rdx rsi rdi 一样 执行一些操作fastcall 并获取 r
  • 使用 catch all 字典属性将 json 序列化为对象

    我想使用 JSON net 反序列化为对象 但将未映射的属性放入字典属性中 是否可以 例如给定 json one 1 two 2 three 3 和 C 类 public class Mapped public int One get se
  • 原子的 C++ 内存屏障

    在这方面我是个新手 谁能提供以下内存屏障之间差异的简化解释 窗户MemoryBarrier 围栏 mm mfence 内联汇编asm volatile memory 内在的 ReadWriteBarrier 如果没有简单的解释 一些好文章或
  • 何时分离或加入 boost 线程?

    我有一个方法 大约每 30 秒触发一次 我需要在一个线程中包含它 我有一个可以从类外调用的方法 像 call Threaded Method 这样的东西会创建一个线程 该线程本身会调用最终的线程方法 这些是 MyClass 的方法 void
  • 这些工作队列标志意味着什么?

    在研究工作队列时 我遇到了内核中定义的工作队列标志和常量 我有以下我无法理解的疑问 这里的排水和救援到底是什么意思 WQ DRAINING 1 lt lt 6 internal workqueue is draining WQ RESCUE
  • 在 Windows 上使用 C/C++ 开发时省略 msvcr100.dll?

    是否可以在 Windows 上使用 C C 进行开发而不链接到 msvcr100 dll 我知道这是 Windows 的标准 c 库 但我想知道如果我没有安装 Visual Studio 或 Redistributable 软件包 我的计算
  • 在 C# 窗口应用程序中运行 C/C++ 控制台应用程序?

    现在 我想开发一个简单的应用程序 因此我决定最快的编码方式是 C NET 但现在 我很难实现我需要的功能之一 我想做的是在 C 应用程序的窗口内运行 C C 控制台应用程序 就像在虚幻前端中一样 添加一点通信方式 以便我可以为控制台应用程序

随机推荐

  • IIS 返回 404 未找到 .mp4 文件

    我使用 html video 标签来播放视频 在我的本地主机中视频播放 但是当我发布 没玩过 我已经创建了基于ASP NET的项目 我在本地使用类似这种方法 http localhost 41563 files Just mp4 当我发布网
  • 如何精确测量绳子的宽度?

    首先 问一个问题How to measure width of character precisely 这是回答 对于这种情况并没有真正的帮助 所以这不是那个的重复 我有一根绳子 我画画使用graphics DrawString 但是当我需
  • 三角形网格的测地线计算? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我试图找到三角表面上两点之间的距离 测地距离 这看起来像是一个基本操作 但并不简单 所以我想知道是否有任何图书馆可以做到这一点 我的谷歌搜索失败了
  • 从 Android-NDK 应用程序发送意图

    我正在 android 下用 C 编写一个本机应用程序 我需要广播一些意图 这可能吗 如果您要向我指出 JNI 请给我更多详细信息 因为我不确定这是如何完成的 如果这是不可能的 我会做的是在 NDK 守护进程和 Java Android S
  • 何时在 UIComponent 上调用 setValue 和 setSubscribedValue?

    如果我正确地组合了 BalusC 2006 年精彩帖子中包含的信息http balusc blogspot ch 2006 09 debug jsf lifecycle html擎天柱的更早的帖子http cagataycivici wor
  • JavaScript 中的两种方式哈希 JSON 字符串以在 URL 中使用

    我想获取一个 JSON 字符串并对其进行加密 哈希 编码 以便我可以将其放入 URL 中 使其类似于如下所示 var stringToEncode JSON stringify foo baz bar 1 2 3 4 5 baz fizzl
  • 在 WinForms 应用程序中嵌入视频

    我需要能够使用 C 在 WinForms 应用程序中嵌入并控制 AVI 文件的播放 视频需要嵌入到表单中 而不是在单独的媒体播放器窗口中启动 执行此操作的最佳方法是什么 我发现了 System Media 命名空间 这听起来很有希望 但似乎
  • 无法在 R Markdown 中使用 Rcpp 引擎

    我尝试过了Knit HTML以下 Rmd 文件 title Untitled author Florian Priv date 12 septembre 2016 output html document r fibCpp engine R
  • 在内存而不是文件系统中创建文件

    我正在使用 NET 库函数将文件上传到服务器 并将文件路径作为参数 我想要发送的数据很小并且是在运行时构建的 我可以将其保存到临时文件 然后上传 由于我的应用程序将部署在各种环境中 并且我不知道是否能够可靠地创建临时文件 因此最好能够传递到
  • 如何分发Java应用程序

    我想了解分发 Java 应用程序的各种选项 我知道你可以 分发源代码并让用户自己编译 或提供make文件等 将其打包成 JAR 并具有自解压档案 和 我确信 还有无数其他方式 我希望对最常见的选项 以及我没有想到的选项 进行一些解释 特别是
  • Chrome 扩展 + Devise + Rails 应用程序 - 从扩展发出经过身份验证的请求?

    我正在构建一个 Chrome 扩展程序 可以直接从浏览器创建联系人 而无需转到我的由 devise 驱动的 Rails 应用程序本身 Contacts Create 需要身份验证 因此我想知道如何从扩展程序发送经过身份验证的请求 我已启用设
  • .NET Core 未显示在 Visual Studio 2022 的目标框架下拉列表中

    我已经安装了 NET core 3 1 并验证了我可以在我的计算机上运行 NET core 3 1 应用程序 但是当我去创建新项目时 目标框架的下拉列表仅允许 NET 6 0 我正在使用 Visual Studio 2022 我在笔记本电脑
  • ASP.NET Web 服务器无法启动并且无法切换 Mono 环境

    我在跑步Monodevelop 的最新版本之一在 Linux Mint 上 在我格式化驱动器并进行全新安装之前 它曾经可以工作 当我构建项目时 它构建得很好 但是当我尝试运行它时 我收到以下消息 无法启动 ASP NET Web 服务器 找
  • 如何在CSS中将页脚粘贴到底部? [复制]

    这个问题在这里已经有答案了 我遇到了在浏览器底部定位页脚的经典问题 我尝试过的方法包括http ryanfait com resources footer stick to bottom of page 但没有什么好结果 我的页脚总是出现在
  • HTML中点击后如何保持选择?

    我正在编写一个 WYSIWYG 编辑器 不能使用像 TinyMCE 这样的东西 必须自己编写代码 并且我希望用户能够通过在 HTML 中添加标签来将文本设置为粗体 下划线 链接等 我遇到的问题是 当用户选择可编辑 div 中的文本 然后单击
  • Bash 检查是否存在不存在的文件?

    在 bash 中运行以下命令 stuff rpm ql
  • 使用 Eclipse + ADT 创建 Android 应用程序的“最小”源文件

    我试图使用 Eclipse ADT Android 开发工具包 来了解最小 Android 应用程序的结构 请您告知我需要的最小源文件集是什么 例如 src package MainActivity java res layout acti
  • Visual Studio 中的 Typescript AMD 模块

    我从使用 Visual Studio 2012 Ultimate 的 TypeScript 开始 我已经更改了 MSBuild 包括编译器命令中的 module amd 标记 编译器开始生成AMD模块 我在我的项目中包含了来自 Nuget
  • Python:乘法覆盖

    所以 我有一个自定义类 mul 与整数一起使用的函数 然而 在我的程序 在库中 中 它被以相反的方式调用 即2 x where x是我班的 有什么办法可以让它使用我的 mul 功能为此 只需将以下内容添加到类定义中即可 rmul mul
  • 返回匿名类型的简单方法(使使用 LINQ 的 MVC 成为可能)

    我想在使用 LINQ 特别是 LINQ to entities 的同时实现 MVC 我这样做的方法是让控制器使用 LINQ 生成 或调用生成的东西 结果集 然后将其返回到视图以显示数据 问题是 如果我这样做 return from o in