Windows 7上的WCF netHttpBinding

时间:2013-02-27 18:08:28

标签: .net wcf wcf-binding .net-4.5 nettcpbinding

我目前有一个用.NET 4.0编写的客户端/服务器应用程序,使用带有netTcpBinding的WCF,在我的服务器和客户端应用程序之间提供全双工消息传递。该服务器是AWS EC2上的自托管应用程序。客户端是安装在客户PC上的Window 7应用程序。

我现在遇到的问题是我的一个新客户坚持要求我的应用程序通过内部MS ISA 2004代理服务器连接,而不是直接连接到Internet来连接我的服务器。

问题1:

netTcpBinding不支持代理。我建议客户安装ISA Server的MS防火墙客户端,通过代理路由所有winsock流量,并简单地将新的允许协议添加到代理服务器。显然这是不可能的,因为建筑物中的机器太过锁定而无法安装此软件,所以这不是一个选择。 (Hmmmmm)

问题2:

我有一个明智的想法,升级到.NET 4.5并更改为netHttpBinding,允许使用WebSockets通过HTTP进行双工通信,因此代理应该允许这样做。我的服务器是Windows Server 2012所以没问题。一切都适用于Windows 8.我遇到的问题是我的客户不使用Windows 8,并且不太可能使用多年。目前netHttpBinding仅在Windows 8和Server 2012上受支持。(恼人!)

我的问题是有没有人知道我可以用来在.NET 4中生成自定义WCF绑定的第三方库,它允许我连接到.NET 4.5 netHttpBinding,或者任何人都可以指向我的方向在保留双工通信的同时克服此代理问题的任何其他方法?

1 个答案:

答案 0 :(得分:0)

.NET 4.5仅在Windows 8上可用是不准确的。 它实际上支持Vista SP2。

http://msdn.microsoft.com/en-us/library/8z6watww(v=vs.110).aspx