Silverlight客户端
使用WCF RIA Services,我们可以创建一个当数据交互时知道中间层应用逻辑的Silverlight客户端。还可以对可见的和可编辑的数据提供用户接口,来在提交数据修改之前应用验证规则。我们的SL控件将会使用从中间层代码自动生成类。次章节介绍SL客户端如何使用domain context, 如何与数据一起工作,以及如何自定义生成的代码.
使用DomainContext
在中间层项目中会对每个domain service都生成一个DomainContext类来公开实体对象。在域上下文中包含着查询和修改等方法,这些方法与在域服务中对应的域操作进行沟通。当我们在SL应用程序中调用域上下文类上的一个查询方法时,这个查询方法会调用返回所需数据的域服务上的对应方法。这些域上下文上的方法都是异步执行的,所以在装载数据的时候,用户界面不会被锁定。
呈现和修改数据
我们使用SL控件,例如 DataGrid控件,来呈现通过域上下文检索到的数据。我们把控件和查询结果绑定在一起。
我们也可以通过SL控件更新、插入和修改数据,当这些操作在域服务中公开时。当我们调用域服务上的数据修改操作时,中间层逻辑会处理来自SL客户端的数据,以确保商业规则应用到了修改操作上。
我们还可以使用DomainDataSource控件与来自域服务的数据交互。DomainDataSource控件允许我们使用声明语法来指定分页、排序、分组、和过滤数据。
自定义生成的代码
要想自定义生成的代码,我们不应该修改 Generated_Code文件夹下的文件。因为当客户端项目重新生成时,这些文件将会被覆盖。反之,通过提供在域上下文中的局部方法和实体代理类,RIA Services允许我们为客户端自定义生成的代码。通过这些局部方法,我们可以在客户端添加计算性能,或添加当特定动作执行时需要的自定义逻辑。只有在我们已经实施了局部方法的情况下,生成的局部方法在会在运行时被调用。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/blackant2/archive/2010/04/08/5461671.aspx