2

尝试在我的应用程序中添加服务时出现以下错误

元数据包含无法解析的引用:“net.tcp://[address]/myWCFService”。无法连接到 net.tcp://[address]/myWCFService。连接尝试持续了 00:00:21.0010000 的时间跨度。TCP错误代码10060:连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应[地址]:808。连接尝试失败,因为连接的一方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应 [地址]:808 如果在当前解决方案中定义了服务,请尝试构建解决方案并添加再次参考服务。

我创建了一个 WCF 服务并将其添加到 asp.net 主机应用程序 ,当我在我的系统上本地测试它时它工作正常,但是当托管在我们的服务器上时出现错误。

网络配置:-

<system.serviceModel>
    <behaviors>
        <serviceBehaviors>
            <behavior name="myBehavior">
                <serviceMetadata />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <bindings>
        <netTcpBinding>
            <binding name="myBinding" />
        </netTcpBinding>
    </bindings>
    <services>
        <service behaviorConfiguration="myBehavior" name="GChatService.Chat">
            <endpoint address="net.tcp://[address]:808/myWCFService"
                binding="netTcpBinding" bindingConfiguration="myBinding" name="nettcp"
                contract="GChatService.IChat" />
            <endpoint address="net.tcp://[address]:808/myWCFService/mex"
                binding="mexTcpBinding" bindingConfiguration="" name="mex"
                contract="IMetadataExchange" />
            <host>
                <baseAddresses>
                    <add baseAddress="net.tcp://[address]:808" />
                </baseAddresses>
                <timeouts closeTimeout="00:02:10" openTimeout="00:10:00" />
            </host>
        </service>
    </services>      
</system.serviceModel>

asp主机代码

4

4 回答 4

3

检查防火墙设置。也许在您的本地系统上 808 是打开的,而在托管环境中它在某处被阻止。10060 错误的典型原因

于 2013-06-19T15:43:48.160 回答
2

进入防火墙-高级设置-入站点击左侧栏中的入站规则。单击右栏中的新规则。选择端口,然后单击下一步。选择 TCP 并在特定本地端口字段中输入 8000、8001、8002、8003、9001、80、443。点击下一步。选择允许连接,然后单击下一步。选择域和私有,然后单击下一步。将此规则命名为 WCF-WF 4.0 Samples,然后单击 Finish。单击出站规则并重复步骤 c 到 h。

于 2015-08-31T13:16:52.783 回答
0

有两个原因: 1:如果它没有响应,要么将您的端口列入白名单。2:秒和毫秒超时问题,如果你给3600,不代表1小时,实际上是毫秒,所以检查一下。

于 2017-03-03T10:03:23.673 回答
0

默认情况下,在绑定部分 useDefaultWebProxy 将为 true,将其设为 false

于 2019-01-28T10:08:26.777 回答