在Silverlight RIA服务中创建PresentationModel的正确方法是哪种?

| 我有搜索员工页面并编辑员工日期。用户可以在员工搜索页面中搜索数据,它将显示员工的名字和姓氏,因此我在演示模型中创建SearchEmployeeEntity。当用户单击“编辑员工”时,我将从服务中获取数据,这一次我将获得名字,姓氏,用户名,生日和其他信息,因此我创建了另一个表示模型名称EmployeeEntity。 我考虑一下我的设计,有两种方法可以做到这一点,一种是如我上面所解释的,另一种是在两种服务中仅使用一种表示模型(EmployeeEntity)。 无论如何,如果我在所有位置(搜索页面和编辑页面)都使用EmployeeEntry,则由于我使用静态DomainContext,因此很难管理数据。 请建议我,在Silverlight应用程序中创建演示模型的哪种方法好? 附言我在客户端使用MVVM。     
已邀请:
它是同一实体,因此您只需要一个。使用上下文的不同之处在于-您正在创建新员工,还是编辑现有员工。 Silverlight RIA服务会为您处理此问题,因为它知道如何执行更改跟踪。 因此,当您进行编辑时,您将针对您的上下文进行查找并执行LoadOperation,这将从数据库将实体返回给您。允许用户在客户端上编辑Employee的字段,然后执行SubmitOperation将更改持久保存到数据库。 对于新员工,您可以在ViewModel中创建一个新的EmployeeEntity,然后将其添加到Context \的Employees集合中。像这样:
EmployeeContext.Employees.Add(Employee);
正确填写字段后(希望您利用Silverlight的超简单验证规则来确保正确的数据),然后再次执行SubmitOperation将新实体保存到数据库。     

要回复问题请先登录注册