复杂的业务实体,业务逻辑和Silverlight客户端代码

时间:2011-02-28 05:27:11

标签: silverlight line-of-business-app

考虑您有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 / toolkit有更简单的方法吗?或者是否可以在Silverlight客户端中重用上述业务实体?在哪种情况下,有一种简单的方法可以将数据从Web服务代理对象复制到业务实体上?

1 个答案:

答案 0 :(得分:1)

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

希望这会有所帮助......

Chris Anderson