在IIS7下利用http协议承载WCF并非难事,只需很简单的设置就能完成。但通过net.tcp协议就稍有难度,配置过程如下:
- 确保IIS7已安装好,并且执行c://windows/Microsoft.NET/v3.0/Windows Communication Foundation/ServiceModelReg.exe -i 。此命令是安装多协议支持,比如net.tcp,net.msmq等。
- 在IIS7下建立新站点,或在已有的站点下操作。
- 将WCF所需文件拷贝到站点目录下,并将其“转换为应用程序”
- 右键点击站点,“管理网站”->“高级设置”,在“已启用的协议”里添加net.tcp,注意:多个协议之间以","分隔
- 右键点击转换后的应用程序,“管理应用程序”->“高级设置”,在“已启用的协议”里添加net.tcp,注意:多个协议之间以","分隔。
- 从浏览器里访问".svc"文件,若访问成功,说明设置OK。
需要注意的几个问题:
- Web.config文件中的endpoint address="net.tcp://yourip:808/your directory/service.svc"
- 客户端的App.config中的endpoint address="net.tcp://yourip/your directory/service.svc",这里不需要端口号