目前,我正在开发一个项目,该项目直接使用WCF与 Service 功能而不是WCF RIA进行交互。问题是我为silverlight客户端应用程序中的每个实体(服务中)创建模型以进行验证,没关系。但是每次我想在数据库中插入或更新实体时,我都应该使用客户端模型填充服务器实体。有什么办法可以防止这些额外的工作?
问问题
77 次
1 回答
1
一个典型的 MVVM (Silverlight) 客户端和 (WCF) 服务的第一个版本有很多重复的类型、逻辑和类型之间的映射。
这是创建 WCF RIA 服务的原因之一。
在 MVVM 应用程序的第一个版本中,模型和视图模型将非常相似。当出现新的需求并且视图添加了越来越多的功能时,这些将出现分歧,模型将与视图模型变得非常不同。
模型将由服务确定,而 ViewModel 由视图确定。这将导致映射越来越不重要。
我使用 T4 模板来生成基于 XML 定义的 ViewModel。这避免了编写无聊、重复的映射代码的需要。
编辑 请参阅Codeplex 上的 MVMMapper 项目以使用 T4 生成 ViewModel
于 2013-01-08T07:35:50.743 回答