扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章主要为大家展示了“怎么使用WCF框架”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么使用WCF框架”这篇文章吧。
公司主营业务:成都网站制作、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出阆中免费做网站回馈大家。
框架其实就是一种规范的流程,它可以让我们的流程很清晰,代码更规范。下面我们就来介绍一下WCF框架中发布-订阅的实现流程。我并不只是提供了发布-订阅服务以及客户端的实例,而且还提供了一个通用的框架,能够自动实现发布-订阅服务,以及增加对所有应用程序的支持。若要构建这样的框架,首先需要分解管理发布-订阅的接口,然后为临时订阅和持久订阅以及发布提供单独的契约。
WCF框架阅者类型
我们甚至可以定义两种类型的订阅者:临时订阅者是在内存中运行的订阅者;持久订阅者则是持久化到磁盘的订阅者,它们代表了服务对发生事件的调用时间。对于临时订阅者,可以使用双向回调机制,通过它将回调引用传递到正在运行的服务。持久订阅者则需要将订阅者地址当作引用进行记录。当事件发生时,发布服务会调用持久订阅者的地址,然后将事件传递给它。两种订阅类型还有另外一个显著区别,就是我们可以将持久订阅者存储在磁盘或数据库中。这样就能够在关闭应用程序或机器崩溃或重启的时候,持久化订阅者。这一过程允许以管理方式对订阅进行配置。显然,在关闭应用程序时,我们不能存储临时订阅,而需要在每次应用程序启动时,明确地创建临时订阅。
WCF框架管理临时订阅
可以使用我定义的ISubscriptionService接口管理临时订阅,定义如例所示。例 管理临时订阅者的ISubscriptionService接口
[ServiceContract] public interface ISubscriptionService { [OperationContract] void Subscribe(string eventOperation); [OperationContract] void Unsubscribe(string eventOperation); }
注意,ISubscriptionService接口无法识别实现了它所期待的终结点的回调契约。作为一个通用的接口,它与特定的回调契约无关。定义这些回调契约取决于如何使用应用程序。通过继承ISubscriptionService接口,可以在应用程序中提供回调接口,并指定所需的回调契约:
interface IMyEvents { [OperationContract(IsOneWay = true)] void OnEvent1( ); [OperationContract(IsOneWay = true)] void OnEvent2(int number); [OperationContract(IsOneWay = true)] void OnEvent3(int number,string text); } [ServiceContract(CallbackContract = typeof(IMyEvents))] interface IMySubscriptionService : ISubscriptionService {}
以上是“怎么使用WCF框架”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流