【发布时间】:2014-08-13 14:29:00
【问题描述】:
我正在尝试为 WCF 服务托管 NetTcp 端点,但似乎可以让它工作。每当我尝试向端点发送消息时,应用程序池都会崩溃,并且我在事件日志中收到以下错误:
尝试读取和实例化配置的 ProcessHandlerType 时出错。
异常:System.ArgumentException
消息:未知协议 ID 'net.tcp'。
StackTrace:在 System.Web.Hosting.ProcessHost.StartProcessProtocolListenerChannel(String protocolId, IListenerChannelCallback listenerChannelCallback)
我正在使用带有 IIS 8 的 Windows Server 2012。应用程序池在 .NET 2.0 集成模式下运行。 Web 应用程序启用了 net.tcp 协议,并且托管应用程序的站点具有添加了绑定信息 808:* 的 net.tcp 绑定。 .NET Framework 3.5 启用了非 Http 激活功能,.NET Framework 4.5 启用了 TCP 激活功能。
起初我根本无法让 NetTcp-endpoint 工作,但在位于 http://support.microsoft.com/kb/2803161 的文章的帮助下,我设法至少获得了 Mex http-endpoint。 (我使用了文章的方法一)。
任何人都可以阐明可能的原因吗?帮助将不胜感激!
更新:当我将应用程序池更改为 .NET 4.0 集成模式时,它可以工作,不幸的是,由于代码库旧,这带来了其他复杂性。所以我仍然想让它在 .NET 2.0 应用程序池上运行。
【问题讨论】:
标签: .net wcf iis windows-server-2012 net.tcp