【发布时间】:2023-03-08 07:09:01
【问题描述】:
我正在用 c# 创建我的第一个 n 层解决方案。 我已经创建了我的层,包括一个仅用于练习的服务层(这不是必需的)
我正在使用 Visual Studio 2017,对于后端数据库,我使用 SQL express ver 14。
所以我在我的主应用程序中创建了一个 web 服务客户端,引用服务层的 web 服务。
一切正常,直到我重新启动 VS 或重新加载应用程序。 然后,我必须在我的主应用程序上“更新服务参考”才能使其工作。 否则,我有一个例外:
System.ServiceModel.EndpointNotFoundException: '没有在http://localhost:52132/Srv.svc 处监听的端点可以接受 信息。这通常是由不正确的地址或 SOAP 操作引起的。 有关更多详细信息,请参阅 InnerException(如果存在)。'
内部异常1:WebException:无法连接到远程 服务器
内部异常2:SocketException:无法建立连接 因为目标机器主动拒绝了 127.0.0.1:52132
每次更新都可以,毫不犹豫,(服务参考地址http://localhost:52132/Srv.svc)然后一切正常。
以太调试或发布模式下的清理/重建完全没有结果。
我注意到的另一件事是,这在运行时已经完成了一两次。 突然出现同样的异常,恢复连接的相同程序。
没有对网络服务进行任何更改。
我的 app.config 设置:
<client>
<endpoint address="http://localhost:52132/Srv.svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_ISrv"
contract="DataService.ISrv"
name="BasicHttpBinding_ISrv" />
</client>
提前致谢。
【问题讨论】:
-
您是在本地 IIS 还是 IIS express 上托管 wcf 服务项目? (右键单击您的 WCF 项目 > 属性 > Web 选项卡 > 服务器部分)。将其翻转到本地 IIS 并配置它(如果您还没有)。
标签: c# exception endpoint webservice-client n-tier-architecture