在我将WCF Web服务部署到Windows Server 2008 R2之后,我能够在“http://192.168.100.22:4567/HrmsService.svc”上创建一个页面。这可以在服务器上运行,但不能在我的PC上运行。 我创建了一个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(如果存在)。无法连接 远程服务器连接尝试失败,因为已连接 一段时间后,党没有正确回应,或已确立 连接失败,因为连接的主机无法响应 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>
答案 0 :(得分:1)
99%此错误与网络配置有关,与WCF无关。
尝试使用telnet 192.168.100.22 4567
http://technet.microsoft.com/en-us/library/cc771275(v=ws.10).aspx
将您的服务移至端口80.防火墙通常不会关闭标准端口。