完善Demo
在上一篇 WCF服务重构实录(上)中,我们建立了项目,这里再建立一个简单的客户端调用WCF服务来测试,很简单
这样一个完成的Demo就完成了,那么怎么将这个服务移植到IIS呢?
开始转移WCF宿主
由于是将WCF寄宿到IIS上,我们需要在解决方案中新建一个WEB项目来承载WCF服务,由于要在WEB中寄宿WCF服务,所以在WEB中要引用WCFLib程序集
我们需要一个Svc文件来连接WCF的服务库,因此需要在站点中添加一个SVC文件,由于VS2010会自动给出此SVC对应的服务及方法,我们不需要他默认给出的,所以删除了这个SVC对应的接口和代码实现文件,仅仅保留了NewAddService.svc这个文件。
我们需要更改这个SVC文件的内容,将其中的服务指向我们的WCFLib程序集
更改完这个文件内容后,浏览一下这个SVC,会发现正常提供服务,但是当将这个服务引用到客户端之后,我们会发现他是按照默认走的http绑定:
下面我们将这个SVC文件提供的服务设置为TCP方式的,首先修改一下WebHost项目的web.config文件
并修改WebHost的项目属性,使用IIS来提供服务并且创建出虚拟目录
一定要注意IIS中网站一定要支持net.tcp,且要在ASP.NET 4.0执行,
然后我们生成后在IIS中来浏览一下试试看
到这里呢,已经改造成功了。
但是由于我们的服务众多,不可能一个个的添加SVC文件再删除,按照这种处理速度会使开发进度延迟,怎么样能够不使用SVC文件来中转TCP的服务呢,下一篇中我们将会进行尝试。