![]() |
1
3
我认为在领域中有一个不同于表示层的设计是有好处的。所以从概念上讲,您实际上看到了两个不同的模型,一个用于域层,另一个用于表示层。每个模型都针对其用途进行了优化。 域层旨在提供应用程序域的表示,独立于您正在使用的用户界面。 表示层中的模型可能会有所不同,这取决于您使用的是什么用户界面技术或使用的是什么客户机。例如,对于MVC,表示层中的模型看起来可能与WebForms不同(有些人同时使用两者)。移动设备表示层中的模型看起来可能与桌面上运行的浏览器不同。Web服务可以使用另一个模型来高效地传输数据。如果在Web应用程序中使用Ajax,您可能更喜欢另一个模型来有效地传输信息,例如使用JSON。 所以,是的,通常我会说,拥有不同的模型是完全可以的,只要它们能帮助您以一种易于理解和维护的方式实现您的系统。您提到视图的代码是“更易于阅读”。在我看来,这是一个很好的理由! |
![]() |
2
1
在我看来,这是浪费时间。除了最简单的解决方案,你会花太多的时间来编写任何东西的映射代码。 你在哪里读到的最好是展平你的视图模型?在ViewModel上作为属性公开的复杂业务对象可能不会促进完全封装的代码,但是根据我对MVC项目的经验,一个好的域模型意味着这不会是一个问题,除了纯粹主义者。 |
![]() |
3
0
您将看到一个关系数据结构,它最好保持在第三种正常形式。
我不明白你为什么要分开
如果需要两个独立的类来表示这个数据,而第三个组合类只用于视图中的轻松工作,那么我在第三个类中看不到这一点。 |
![]() |
Mike · html助手-我如何摆脱name属性? 10 年前 |
|
user3902826 · 显示mvc2视图 10 年前 |
![]() |
Baxter · 将带有List<T>的视图模型发布到控制器操作方法 10 年前 |
![]() |
yoozer8 · 将类应用于某些链接文本 12 年前 |