通过LINQ模型查看

时间:2013-06-13 23:56:20

标签: .net asp.net-mvc linq

我们可以跳过定义模型任务并将LINQ数据上下文中表示的类发送到视图吗?我注意到,到目前为止,我的大多数模型都是/ LINID包含的对象组合。但是,我还没有找到将LINQ转换为模型中的类型的方法。

如果可能的话,我们不必担心编程语言数据类型与DBMS的兼容性,也可以节省一些时间。

你能告诉我是否有办法实施它?

2 个答案:

答案 0 :(得分:0)

您始终可以将任何类型的对象作为视图的模型传递。如果您不知道数据类型(如果它是LINQ生成的数据类型),您可以在视图中始终使用@model dynamic声明。

但我建议反对这种方法。在编辑你的Razor视图时有智能感知很好,只有拥有已知的数据类型。此外,如果您为项目启用了预编译视图,编译器可以捕获视图中的潜在错误。

答案 1 :(得分:0)

有许多方法可以绕过使用控制器逻辑来创建视图数据,而是在视图中编写该逻辑。但是,为什么要使用ASP.Net MVC呢?不妨使用Webforms,因为这基本上就是你在做额外的路由开销。

MVC最重要的一点是Single Reponsibility PrincipleReusability。如果您正在查看数据感知并提取数据,那么它现在比提供数据视图更具责任感,因为它必须连接到数据库等等。此外,该视图不能轻易地重用,因为它依赖于它能够正常工作的逻辑,如果某个其他控制器/操作调用它,它可能无法在该上下文中正常工作。

相关问题