关于将MVVM模式用于ASP .NET MVC的文章很多。例如,它是http://blogs.microsoft.co.il/blogs/helpercoil/archive/2010/08/28/asp-net-mvc-and-the-mvvm-pattern.aspx。
我只有一个问题。对于一个模型,我们有很多ViewModels。如何使用ViewModel对象自动填充模型属性?如何进行自动属性映射?
我使用 Entity Framework 。
例如,我具有以下属性的模型Test:
我为任务创建了ViewModel。此ViewModel(TestUserViewModel)用于具有以下属性的简单用户:
- ID
- 姓名
- 标题
例如,用户编辑现有测试。结果,我们有了一个类型为TestUserViewModel的对象。我想:
modelObj.name=viewModelObj.name;
modelObj.title=viewModelObj.title;
使用System.Reflexion看起来也很糟糕。
那么,该怎么做呢?
最佳答案
如果您不想将大量映射代码从一个对象编写到另一个对象,则可能需要研究诸如AutoMapper http://automapper.org/之类的映射工具。
话虽如此,正如@Darin Dimitrov指出的那样,您也应该检查您的体系结构。如果您正在使用ASP.NET MVC,则应该更熟悉MVC,而不是MVVM。当您阅读有关如何使用MVC的更多信息时,您将开始看到“viewModels”的使用。请记住,MVC中的这些“viewModels”与“MVVM”中的“VM”无关。
关于asp.net-mvc-3 - 将MVVM应用于ASP.NET MVC。如何进行属性映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7800212/