c# – 总是在MVC中使用ViewModel模式?

栏目: ASP.NET · 发布时间: 5年前

内容简介:在控制器的MVC中,您应该从DB获取Model并将其转换为ViewModel,然后再将其发送到View.通常使用像Automapper这样的东西.我的问题是,如果你需要在视图中显示模型的所有属性,那么创建一个值得的ViewModel呢?如果Model和ViewModel需要相同,那么创建ViewModel会在应用程序中创建一些安全性或好处,或者我们只是增加了不必要的复杂性?

在控制器的MVC中,您应该从DB获取Model并将其转换为ViewModel,然后再将其发送到View.通常使用像Automapper这样的东西.

我的问题是,如果你需要在视图中显示模型的所有属性,那么创建一个值得的ViewModel呢?

如果Model和ViewModel需要相同,那么创建ViewModel会在应用程序中创建一些安全性或好处,或者我们只是增加了不必要的复杂性?

使用视图模型的关键通常是因为您的视图需要比域模型提供的信息更多/更少的信息.

其他好处包括将您的视图与您的域分离,如果您的域名发展,这可能会导致脆弱.

它的关键是,它们不是必需品;视图模型的目的是为视图提供仅渲染自身所需的信息,如果您认为应用程序中的视图模型是多余的,则不要使用它.但是,我至少会考虑使用接口来避免耦合.

翻译自:https://stackoverflow.com/questions/23723270/always-use-viewmodel-pattern-in-mvc


以上所述就是小编给大家介绍的《c# – 总是在MVC中使用ViewModel模式?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法新解

算法新解

刘新宇 / 人民邮电出版社 / 2016-12-1 / CNY 99.00

本书分4 部分,同时用函数式和传统方法介绍主要的基本算法和数据结构。数据结构部分包括二叉树、红黑树、AVL 树、Trie、Patricia、后缀树、B 树、二叉堆、二项式堆、斐波那契堆、配对堆、队列、序列等;基本算法部分包括各种排序算法、序列搜索算法、字符串匹配算法(KMP 等)、深度优先与广度优先搜索算法、贪心算法以及动态规划。 本书适合软件开发人员、编程和算法爱好者,以及高校学生阅读参考......一起来看看 《算法新解》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具