WCF RIA 服务 (二十八)-- Silverlight 客户端 9

WCF RIA 服务 (二十八)-- Silverlight 客户端 9,第1张

概述  自定义生成代码 对于WCF RIA Services,在某些情况下,我们想在客户端生成的代码中添加些东西。然而,我们不能直接定制生成代码,因为在下次中间层重新编译的时候会被覆盖掉。 RIA Services在生成代码中提供了局部方法,这样我们可以在分开的代码文件中定制客户端代码。这些局部方法就如同“钩子”,通过它我们可以把自己的代码 附加在生成代码上。只有当我们已经创建了对应的局部方法时,这些

 

自定义生成代码
对于WCF RIA Services,在某些情况下,我们想在客户端生成的代码中添加些东西。然而,我们不能直接定制生成代码,因为在下次中间层重新编译的时候会被覆盖掉。 RIA Services在生成代码中提供了局部方法,这样我们可以在分开的代码文件中定制客户端代码。这些局部方法就如同“钩子”,通过它我们可以把自己的代码 附加在生成代码上。只有当我们已经创建了对应的局部方法时,这些方法才能被调用。
局部方法
WCF RIA Services框架为域上下文类和实体类生成局部方法。
对于域上下文类,提供了下面的局部方法。
OnCreated():当 DomainContext对象实例化时执行。

对于实体类,提供了下面的局部方法。
OnCreated():当实体对象实例化时 执行。

OnLoaded(boolean):在第一次装载实体并反串行化时,或当实体从服务端反串行化但已经在客户端存在时执行。

On[Propertyname]Changing: 在验证之后,设定值之前,被调用。

On[Propertyname]Changed: 在设定值之后,调用RaiseDataMemberChanged方法之前,被调用。

On[CustomMethodname]Invoking: 调用定制方法之后,实际执行代码之前,被调用。

On[CustomMethodname]Invoked: 定制方法调用并执行代码之后,被调用。

实施局部方法
要使用这些方法,我们添加一个与想定制的 生成类相同名字和命名空间的局部类。应为自动生成的客户端代码与服务端项目的代码有一样的命名空间,所以我们局部类的命名空间通常是 projectname.Web的格式。然后,在客户端代码必须执行的情况下,我们实施想要执行的方法。例如在一个域上下文被创建并装载时,我们添加如下 代码:



我 们还可以在生成的实体类的局部方法中设置成员属性。例如,如果数据库中的员工表中包含一个名为CreatedBy字段,那么我们可以通过 OnCreated()局部方法来设置这个属性的值。
总结

以上是内存溢出为你收集整理的WCF RIA 服务 (二十八)-- Silverlight 客户端 9全部内容,希望文章能够帮你解决WCF RIA 服务 (二十八)-- Silverlight 客户端 9所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1035240.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-24
下一篇2022-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存