WCF 在VS中,添加服务引用,地址输入http://ip/Service.svc,点击前往,提示错误,内容如下:

 

WCF的service端的webconfig如下:

<?xml version="1.0"?>
<configuration>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="ServiceBehavior">
          <serviceMetadata httpGetEnabled="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
    <services>
      <service behaviorConfiguration="ServiceBehavior"
               name="WcfServiceLibrary1.Service1">
        <endpoint binding="wsHttpBinding"
                  bindingConfiguration=""
                  contract="WcfServiceLibrary1.IService1"/>
      </service>
    </services>
  </system.serviceModel>
</configuration>

WCF 在VS中,添加服务引用,地址输入http://ip/Service.svc,点击前往,提示错误,内容如下:

下载“http://127.0.0.1:7293/WCFServerRefWCFLib.svc”时出错。
请求因 HTTP 状态 404 失败: Not Found。
元数据包含无法解析的引用:“http://127.0.0.1:7293/WCFServerRefWCFLib.svc”。
没有终结点在侦听可以接受消息的 http://127.0.0.1:7293/WCFServerRefWCFLib.svc。这通常是由于不正确的地址或者 SOAP 操作导致的。如果存在此情况,请参见 InnerException 以了解详细信息。
远程服务器返回错误: (404) 未找到。
如果该服务已在当前解决方案中定义,请尝试生成该解决方案,然后再次添加服务引用。

  

解决方法是:

在<system.serviceModel>节点中添加:

    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>

最后的配置是:

 

<?xml version="1.0"?>
<configuration>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="ServiceBehavior">
          <serviceMetadata httpGetEnabled="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
    <services>
      <service behaviorConfiguration="ServiceBehavior"
               name="WcfServiceLibrary1.Service1">
        <endpoint binding="wsHttpBinding"
                  bindingConfiguration=""
                  contract="WcfServiceLibrary1.IService1"/>
      </service>
    </services>
  </system.serviceModel>
</configuration>

 

 

 

 

 

posted @ 2013-09-26 15:54  easy5  阅读(9463)  评论(0编辑  收藏  举报