关于WCF net.tcp站点配置和调试

简介

使用WCF net.tcp激活可以全双工通信,从而实现由服务端向客户端的消息传递。与http双工不同的是:http需要通信双方采用相等的身份,即同时是服务端和客户端的集合体,这也意味着双方在同一网络或均拥有公网IP。

net.tcp直接利用tcp协议进行通信,这就限制了其在浏览器客户端(http环境)的使用,当需要从服务端向浏览器主动通信时,须考虑其他技术如SignalR/HTML5.

站点配置

在配置服务器IIS时,若遇到服务无法访问,可尝试如下操作,这些是某侠学习过程中发现比较容易遗忘的几点:

  • 为站点添加net.tcp绑定;
  • 若在子网中,设置路由器的转发规则;
  • 添加808端口(或其他非默认端口)的防火墙规则;
  • 在站点/应用程序配置中添加net.tcp到已启用的协议

项目调试

默认情况下,ASP.NET项目调试会使用IIS Express,但IIS Express是不支持net.tcp激活的,同时WCF net.tcp服务也不会使用其随机端口(这个端口是为http服务准备的)。

若要调试net.tcp服务,应选择“本地IIS”方式,设置和添加虚拟目录指向项目文件夹(可通过属性页自动设置),而本地IIS设置可参考前一节。

发表评论

电子邮件地址不会被公开。 必填项已用*标注


一 + 1 =