C# 局域网中的WCF业务

C# 局域网中的WCF业务,c#,wcf,C#,Wcf,我已经在我的开发机器上创建并启动了WCF服务 当我使用http://localhost:8080/ServiceName/Function作为URL,工作正常 当我使用http://MY.LAN.IP.ADDRESS:8080/ServiceName/Function作为URL,它不起作用 任何地方,不在开发机器上,也不在局域网中的其他机器上 例如,在Android测试应用程序中,错误消息显示: “连接到http://... “被拒绝” 我已禁用windows防火墙和防病毒软件 是什么导致了这样

我已经在我的开发机器上创建并启动了WCF服务

当我使用
http://localhost:8080/ServiceName/Function
作为URL,工作正常

当我使用
http://MY.LAN.IP.ADDRESS:8080/ServiceName/Function
作为URL,它不起作用 任何地方,不在开发机器上,也不在局域网中的其他机器上

例如,在Android测试应用程序中,错误消息显示:

“连接到http://... “被拒绝”

我已禁用windows防火墙和防病毒软件

是什么导致了这样的问题? 我需要在服务配置(web.config)中配置一些东西吗


请注意,该服务正在ASP.Net Development Server内部运行。

根据该站点,您应该检查开发服务器选择的随机端口(在您的情况下,该端口是8080)是否在防火墙上打开。如果这不起作用,那么如果没有为这些远程请求安装和配置IIS版本,我不确定它是否能起作用。

ASP.NET开发服务器无法接受远程连接,因此这在本地计算机外部无法起作用


我不确定您是如何配置的;因为这实际上会导致并发症。但是您的问题存在于您的
主机中。如何创建
主机
以接收
代理
。有一件事可能正在发生:

当它在您的本地计算机上运行时,实际上正在启用
iisexpress
,以便您可以查看并测试该服务。因此,此时IIS正在处理这些请求。这使得它可以毫无问题地工作

另一个难题是:

  • 开发服务器可能未配置为接收外部请求
  • IIS服务器可能未配置为接收这些请求
  • 或者它创建了一个随机端口使用;这是无法访问的
这更有可能是正在发生的事情。因为IIS是自动处理的;其中一个很可能是不正确的


但是,在我们看到您的
app.config
ServiceHost
代码详细信息之前,我们无法确定。

实例托管在ASP.Net开发服务器中。这不是我的问题。。。您是否在该服务器上或通过Internet信息系统(IIS)提供Windows服务。我之所以问这个问题,是因为需要实现IIS设置,所以当外部通信使用该地址时,它实际上会定向到您的应用程序。不,我没有任何这些。请求时,开发服务器上实际运行的是服务吗?开发服务器实际上只在调试期间使用。发布您的
app.config
和(如果有)用于创建
ServiceHost的代码。