内容简介:在控制器的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模式?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
维多利亚时代的互联网
[英] 汤姆·斯丹迪奇 / 多绥婷 / 后浪丨江西人民出版社 / 2017-8 / 38.00元
人类历史上的第一次大连接 回顾互联网的前世 预言互联网的未来 ……………… ※编辑推荐※ ☆《财富》杂志推荐的75本商务人士必读书之一 ☆ 回顾互联网的前世,颠覆你的思维,升级你对互联网的认知 ☆ 人类历史上一次全球大连接是维多利亚时期的电报时代,那时候也有疯狂的资本、 巨大的泡沫、网络新型犯罪、网络亚文化崛起……现在的互联网时代就是电报时代的重演;回顾那......一起来看看 《维多利亚时代的互联网》 这本书的介绍吧!