假设您有 2 个类:学生和课程,并且可以通过学生上的方法将课程添加到学生。
class Course{ public string Name;}
class Student {
public string Name;
private List<Course> courses = new List<Course>();
public ReadOnlyCollection<Course> Courses {get {return courses.AsReadOnly();}}
public Add(Course course) { if (courses.Count <= 3) courses.Add(course);}
}
以上将是服务器上的业务实体,并且 Add 方法可以内置更多的业务逻辑。
现在,当需要在 Silverlight 客户端中显示业务实体时,我必须创建一个 Web 服务,该服务将公开一个可以将 Student 对象向下发送到客户端的方法。
我的问题是:我是否需要在 Silverlight 客户端最终使用的实体上复制业务逻辑?或者有没有更简单的方法可以通过其他一些技术/sdk/工具包来做到这一点?或者是否可以在 Silverlight 客户端中重用上述业务实体?在这种情况下,是否有一种简单的方法可以将数据从 Web 服务代理对象复制到业务实体上?