C# 局域网中的WCF业务
我已经在我的开发机器上创建并启动了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防火墙和防病毒软件 是什么导致了这样
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的代码。