有很多关于在ASP.NET .NET MVC中使用MVVM patterm的文章。例如,它是http://blogs.microsoft.co.il/blogs/helpercoil/archive/2010/08/28/asp-net-mvc-and-the-mvvm-pattern.aspx。
我只有一个问题。我们为一个Model提供了很多ViewModel。如何使用viewModel对象自动填充模型属性?如何进行自动属性映射?
我使用实体框架。
例如,我的模型测试具有以下属性:
我为我的任务制作了ViewModel。此ViewModel(TestUserViewModel)用于具有以下特性的简单用户: - ID - 名称 - 标题
例如,用户编辑现有测试。结果,我们有一个类型为TestUserViewModel的对象。我想要:
使用一些自动内容 - 它可能类似于ApplyCurrentValues。我真的不想写下很多代码:
modelObj.name=viewModelObj.name;
modelObj.title=viewModelObj.title;
使用System.Reflexion也看起来很糟糕。
那么,怎么做呢?
答案 0 :(得分:2)
如果您不想将大量映射代码从一个对象写入另一个对象,您可能需要查看AutoMapper http://automapper.org/等映射工具
话虽如此,正如@Darin Dimitrov指出的那样,你也应该检查你的架构。如果您正在使用ASP.NET MVC,您应该更熟悉MVC而不是MVVM。当您阅读有关如何使用MVC的更多信息时,您将开始看到“viewModels”的使用。请记住,MVC中的这些“viewModels”与“MVVM”中的“VM”无关。