0

我们可以跳过定义模型任务并将 LINQ 数据上下文中表示的类发送到视图吗?我注意到,直到现在,我的大部分模型都与 LINQ 包含的对象的组合相同。但是,我还没有找到将 LINQ 转换为模型中的类型的方法。

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

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

4

2 回答 2

0

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

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

于 2013-06-14T00:13:28.717 回答
0

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

MVC 最大的一点是单一职责原则可重用性。如果您的视图是数据感知并提取数据,那么它现在比仅仅提供数据视图具有更多的责任,因为它必须连接到数据库等等。此外,该视图不能很容易地重用,因为它依赖于它所知道的逻辑才能正常工作,并且如果其他一些控制器/动作调用它,它可能无法在该上下文中正常工作。

于 2013-06-14T00:27:03.017 回答