1

假设您有 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 服务代理对象复制到业务实体上?

4

1 回答 1

1

查看 RIA 服务。它使您能够在服务器和客户端业务对象之间共享逻辑(您为服务器编写代码,它会自动编码在客户端对象中生成逻辑)。或者,如果您不想使用 RIA 服务,请尝试我在 RIA 服务之前写的这个方法:http ://www.silverlightshow.net/items/Building-a-Silverlight-Line-Of-Business- Application-Part-3.aspx

希望这可以帮助...

克里斯·安德森

于 2011-02-28T05:39:46.143 回答