Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 不支持WCF net.tcp。(socketexception)_C#_Wcf_Iis - Fatal编程技术网

C# 不支持WCF net.tcp。(socketexception)

C# 不支持WCF net.tcp。(socketexception),c#,wcf,iis,C#,Wcf,Iis,我有一个学习应用程序,它在一个单独的服务中实现了最重要的端点。我正在实现net.tcp+wsHttp+BasicHttp和WebHttp,除了net.tcp之外,它们都工作得很好。当我通过浏览器访问它时,它会告诉我以下信息: 不支持协议“net.tcp”。 描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源 异常详细信息:System.InvalidOperationException:不支持协议“net.tcp” 这似乎是一个相当普遍的问

我有一个学习应用程序,它在一个单独的服务中实现了最重要的端点。我正在实现net.tcp+wsHttp+BasicHttp和WebHttp,除了net.tcp之外,它们都工作得很好。当我通过浏览器访问它时,它会告诉我以下信息:

不支持协议“net.tcp”。 描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源

异常详细信息:System.InvalidOperationException:不支持协议“net.tcp”

这似乎是一个相当普遍的问题,因为我通过互联网进行了研究,并得出结论,因为我在xp上本地使用它,所以我不能。当我执行请求时,我会得到一个Socketexception,其中包含连接被拒绝的代码

但是,我又做了一个只有net.tcp及其端点和绑定的项目,它可以工作!所以这很可能意味着我没有使用IIS。我还是wcf的初学者,它告诉我它是由wcf服务主机托管的

有人能给我解释一下我能做些什么使它在windows xp上工作吗

感谢浏览器(以及为其提供服务的IIS)使用HTTP


TCP是一种较低级别的协议,需要自定义客户端(如Windows应用程序)进行通信。WCF服务主机是一个实用程序,可以在调试时为您托管服务。通常情况下,您会编写正确的主机(exe或Windows服务)。

是的,您是正确的-Net.TCP在IIS 5.1(Windows XP)上不可用

要在XP计算机上使用Net.TCP,您有两个托管选项:

  • 自托管服务(使用
    ServiceHost
  • Windows服务托管-您的服务托管在Windows服务中
  • IIS-仅限HTTP

  • 有关托管WCF服务的各种方法的概述和比较,请参阅。

    您是否想过为什么需要所有这些绑定?互操作性很好,但您已经有了2个可解释的绑定(web和basic),而net.tcp是最不可解释的。通过浏览器访问意味着什么?