WCF探索之旅(四)——程序中WCF服务整合
来源:互联网 发布:数学在线解题软件 编辑:程序博客网 时间:2024/05/02 01:42
我们在之前的博客已经完成过实例,大家也看到了如何使用WCF服务:
添加服务引用——>输入服务地址——>实例化服务——>调用服务方法
那么今天为什么要再次说“程序中WCF服务整合”这个话题?
用过WebService的人都知道,随着服务的增多,管理WebService是一个非常繁重的工作。好了,今天我们的目标来了——让WCF服务变得整齐、有序、易管理!
首先,我们建立一个工厂类,这个工厂用来实例化我们的服务。这样做的好处是,所有的服务都是由工厂实例化的。
然后我们要建立一个公共的接口,这个接口继承所有的服务接口。这样做的好处是,所有的服务接口都可以用这个接口来代替。
好了,有了这两点,我们就可以利用多态+工厂来统一管理我们的服务了。
说了这么多理论,还是以我们程序猿的语言说更明了一些!
1、建立接口类IServices
namespace <span style="font-family: SimSun; font-size: 10.5pt;">Modules.Interface</span>
3、建立代理工厂ServiceProxyFactory
namespace Modules.Factory.ServiceProxy{ }
4、建立代理类RealProxy
namespace Modules.Factory.ServiceProxy{}5、建立通道工厂ChannelFactoryCreator
namespace ICT.RCS.Modules.Factory.ServiceProxy{ }
6、引入工厂dll
要想使用WCF,我们以前是必须添加服务引用,而添加服务引用VS就会自动生成一个APP.CONFIG的配置文件,这个文件中配置了服务的地址以及访问协议等内容。
现在,我们需要将上面的这些内容打包成dll并添加到引用。
7、配置app.config
<configuration> </configuration>
至此,我们的整合已经完成了。我们在需要用服务的地方使用ServiceFactory.GetUserService().AddUser(enUser);即可。不需要引入服务引用,不需要手动实例化,是不是方便了很多,灵活了很多!
如果现在有了新的服务需求,我们只需要
1、开发一个新的接口和实现
2、在IService接口中添加继承
3、更新服务
4、程序中直接调用ServiceFactory就可以“点”出它来
这篇博客中参考了其他人很多东西,也是一次尝试。如果大家在练习或者使用过程中遇到什么问题,咱们可以一起交流!
下一篇博客跟大家一起分享:WCF与WebService的异同
- WCF探索之旅(四)——程序中WCF服务整合
- WCF探索之旅(三)——IIS发布WCF服务
- WCF探索之旅(二)——从零开始WCF实例
- WCF探索之旅(五)——WCF与WebService的异同
- WCF探索之旅(一)——入门
- WCF学习笔记(2)——独立WCF服务
- WCF异常管理—不要在using语句中调用WCF服务(z)
- [原创]WCF技术剖析之四:基于IIS的WCF服务寄宿(Hosting)实现揭秘
- WCF技术剖析之四:基于IIS的WCF服务寄宿(Hosting)实现揭秘
- WCF技术剖析之四:基于IIS的WCF服务寄宿(Hosting)实现揭秘
- wcf之四代码发布服务
- WCF学习心得----(四)服务承载
- WCF之双工服务
- WCF之服务寄宿
- WCF 之 AJax前台调用WCF服务
- WCF——1.2 WCF服务、控制台宿主、控制台客户端
- WCF——1.3 WCF服务、WinForm宿主、WinForm客户端
- 【ITOO】WCF——如何创建WebService和WCF服务
- 第一个ios应用(4)
- java中有那几个类负责对字符进行操作?
- Post请求登录笔记(服务器和客户端示例源码)
- Objective-C语法之NSSet和NSMutableSet
- 数据库隔离级别
- WCF探索之旅(四)——程序中WCF服务整合
- mac下的抓包工具Charles
- linux常用命令
- other linker flags 记录
- get_ds, set_fs, get_fs函数的使用
- Android 滚动字幕实现
- jstl标签库的使用
- 线程同步一
- iOS高效开发必备的10款Objective-C类库