0

我有搜索员工页面并编辑员工日期。用户可以在员工搜索页面中搜索数据,它会显示员工的名字和姓氏,所以我在我的演示模型中创建了 SearchEmployeeEntity。当用户单击编辑员工时,我将从服务中获取数据,这次我获取名字、姓氏、用户名、生日等信息,因此我创建了另一个表示模型名称 EmployeeEntity。

我想了一会儿我的设计,有两种方法可以做到这一点,一种是我上面刚刚解释的,另一种是在两个服务中只使用一个表示模型(EmployeeEntity)。

无论如何,如果我在所有地方(搜索页面和编辑页面)都使用 EmployeeEntry,因为我使用静态 DomainContext,所以很难管理数据。

请建议我,在 Silverlight 应用程序中创建演示模型的好方法是什么?

PS 我在我的客户端使用 MVVM。

4

1 回答 1

1

这是同一个实体,所以你应该只需要一个。不同之处在于使用它的上下文 - 您正在创建新员工或编辑现有员工。

Silverlight RIA 服务将为您处理此问题,因为它知道如何执行更改跟踪。

因此,当您进行编辑时,您将针对您的上下文进行查找并执行 LoadOperation,这将从数据库中将实体返回给您。允许用户在客户端编辑 Employee 的字段,然后执行 SubmitOperation 以将更改持久化到 DB。

对于新员工,您在 ViewModel 中创建一个新的 EmployeeEntity,然后将其添加到 Context 的员工集合中。像这样:

EmployeeContext.Employees.Add(Employee);

正确填写字段后(希望您利用 Silverlight 的超级简单验证规则来确保数据正确),然后您再次执行 SubmitOperation 以将新实体保存到数据库。

于 2011-05-25T16:01:38.163 回答