C# Windows server 2008 R2和IIS7.5中的主机WCF

C# Windows server 2008 R2和IIS7.5中的主机WCF,c#,wcf,windows-server-2008,C#,Wcf,Windows Server 2008,在我将WCF web服务部署到Windows server 2008 R2之后,我可以在http://192.168.100.22:4567/HrmsService.svc“这在服务器上有效,但在我的电脑上无效。 我创建了一个windows窗体应用程序,并尝试将其添加为服务引用,但出现如下错误消息。我在服务器上安装了VS2010,并尝试将其添加为服务引用,它适用于windows窗体应用程序。我甚至在服务器防火墙中添加了端口4567以允许它。 今天早上我一直在努力,但我想不出来。请告诉我 错误消息

在我将WCF web服务部署到Windows server 2008 R2之后,我可以在http://192.168.100.22:4567/HrmsService.svc“这在服务器上有效,但在我的电脑上无效。 我创建了一个windows窗体应用程序,并尝试将其添加为服务引用,但出现如下错误消息。我在服务器上安装了VS2010,并尝试将其添加为服务引用,它适用于windows窗体应用程序。我甚至在服务器防火墙中添加了端口4567以允许它。 今天早上我一直在努力,但我想不出来。请告诉我

错误消息

下载时出错 'http://192.168.100.22:4567/HrmsService.svc?wsdl'. 无法连接 到远程服务器的连接尝试失败,因为 一段时间后,该方未作出适当回应,或 连接失败,因为连接的主机未能响应 192.168.100.22:4567元数据包含无法解析的引用:'http://192.168.100.22:4567/HrmsService.svc?wsdl'. 有 无端点侦听 'http://192.168.100.22:4567/HrmsService.svc?wsdl“这可以接受 消息这通常是由不正确的地址或SOAP操作引起的。 有关更多详细信息,请参阅InnerException(如果存在)。无法连接到 远程服务器A连接尝试失败,因为已连接 一段时间后,该方未作出适当回应,或 连接失败,因为连接的主机未能响应 192.168.100.22:4567如果服务在当前解决方案中定义,请尝试构建解决方案并再次添加服务引用

这是我的Web.config文件

<system.web>
    <compilation debug="true" targetFramework="4.0"><assemblies><add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /></assemblies></compilation>
  </system.web>
  <system.serviceModel>
      <services>
          <service name="WcfServiceHrms.HrmsService" behaviorConfiguration="BehaviorHrms">
              <endpoint address= ""  binding="wsHttpBinding" contract="WcfServiceHrms.IHrmsService" />
              <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
               <host>
                   <baseAddresses>
                       <add baseAddress="http://192.168.100.22:4567" />
                  </baseAddresses>
              </host>
          </service>
      </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="BehaviorHrms">
             <serviceMetadata httpGetEnabled="true" />
             <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
 <system.webServer>
    <modules runAllManagedModulesForAllRequests="true" />
  </system.webServer>

99%的用户认为此错误与网络配置有关,与WCF无关

请尝试telnet 192.168.100.22 4567


将服务移动到端口80。防火墙通常会关闭非标准端口。

您是100%正确的。我把它改成了80端口,结果成功了。但是我想知道为什么我只需要使用端口80。这是真的还是有其他方法可以使用其他端口号?顺便说一句,谢谢你的帮助。端口80是HTTP的默认端口,通常在任何网络中都是打开的。你需要和你的人际关系团队谈谈,以了解你的公司政策。