2011-03-23 56 views
5

我有一个WCF应用程序托管在IIS中,我使用WsHttpBinding和aspnetCompatibility,因为我想使用RouteTable功能将多个呼叫路由到单个服务。WCF ServiceRoute和Tcp

每件事都按预期工作,这里没有问题。

然后,我添加了一个tcp端点到服务(使用它的原始url),并使用客户端调用服务,所有工作都在这里,没有问题。

然后我修改了路由URL的客户端URL,并调用了使用tcp端点的方法,我得到了一个套接字错误,这是我的预期。

但后来我跑与路由URL(这工作)的wsHttp客户,跑与路由URL的TCP客户端(令人惊讶的工作)

是TCP请求和HTTP请求通过相同管道被路由?

+0

您是否在您的机器/服务器上启用了WCF非HTTP激活,并确保net.tcp绑定已注册到您的网站和应用程序中? – stephenl 2011-04-01 11:27:40

+0

是的,所有的配置,我甚至可以调用net.tcp端点后,我打电话给http一个 – 2011-04-01 14:26:40

+0

什么是你的IIS版本? – Rev 2011-04-25 12:46:48

回答

2

据我所知,System.Web.Routing方案仅支持基于HTTP的端点,因为netTcpBinding确实不以相同的方式使用URL。

--larsw

+0

是否有任何机制可用于实现此功能-Routing-用于net.tcp传输? – Achilles 2015-05-03 18:24:48