2011-05-22 85 views
0

我在我的本地主机模式项目(服务器端)使用WCF Web服务,它工作正常如何连接到WCF的Web服务内部局域网

现在我需要从另一台机器连接到这个服务相同的本地网络

我应该在客户端的配置文件中更改哪些内容?

我将客户端的端点更改为包含本地服务器且无法连接的计算机的IP!

<endpoint address="http://10.131.40.22:8732/Design_Time_Addresses/WcfServiceLibrary_Test/Service1/" 
       binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_RepositoryManager" 
       contract="onlineExchangeCenter.RepositoryManager" name="WSHttpBinding_RepositoryManager"> 
       <identity> 
        <dns value="localhost" /> 
       </identity> 
      </endpoint> 
+0

我还怀疑防火墙阻止了您尝试使用的端口。 – tofutim 2011-05-22 08:04:08

回答

1

你会得到什么错误?这个问题可能与防火墙有关。

我通常在服务器上公开一个MEX端点,然后通过SVCutil生成客户端配置文件。

+0

好吧,似乎你是正确的防火墙,现在我有这个例外“来电者未通过服务认证”:( – 2011-05-22 08:13:14

0

首先 - 你需要一个新的端点添加到您的服务 - 为您的企业局域网内部的连接,我会建议netTcpBinding

<service name="someservice" behaviorConfiguration="...."> 
    <endpoint name="existing" 
     address="......" 
     binding="wsHttpBinding" 
     contract="onlineExchangeCenter.RepositoryManager" /> 

    <!-- add this *NEW* netTcpBinding endpoint --> 
    <endpoint name="corporateLAN" 
     address="net.tcp://YourServer:7171/YourService/SomeUrl" 
     binding="netTcpBinding" 
     contract="onlineExchangeCenter.RepositoryManager" /> 
</service> 

一旦你有了这个之后,就应该更新您的客户端 - 在Visual Studio中对服务参考进行“右键单击”,然后选择“更新服务参考”,或手动将此端点信息添加到客户端配置中,以便您的客户端现在可以连接到端点netTcp在你的服务器上。

NetTcp在局域网环境是伟大的,但使用需要的端口是开放的 - 如果你有你的公司环境内的任何防火墙或ISA服务器,则可能需要为了打开这些端口这个工作

相关问题