2016-07-27 100 views
1

我的WCF项目是好的,没有错误,我尝试浏览SVC文件,它工作正常。 但当我添加此WCF引用,它抛出错误:添加WCF服务引用时出错?

There was an error downloading 'http://MyIPAddress/BKKService/BService.svc/_vti_bin/ListData.svc/$metadata'. 
 
The request failed with HTTP status 404: Not Found. 
 
Metadata contains a reference that cannot be resolved: 'http://MyIPAddress/BKKService/BService.svc'. 
 
There was no endpoint listening at http://MyIPAddress/BKKService/BService.svc that could accept the message.

请帮我解决这个问题。

这是我的web.config文件

<services> 
 
     <service name="BKKService.BService"> 
 
     <endpoint address="BKKService" binding="basicHttpBinding" 
 
        bindingConfiguration="basicHttp" contract="BKKService.IBService"/> 
 
     <host> 
 
      <baseAddresses> 
 
      <add baseAddress="http://MyIPAddress/BKKService/BService.svc"/> 
 
      </baseAddresses> 
 
     </host> 
 
     </service> 
 
    </services>

回答

0

你可以指定一个绝对地址与该服务相关联的每个端点也可以为一个服务的ServiceHost提供的基址然后为与此基地址相关的此服务关联的每个端点指定一个地址。
使用IIS托管时,您不需要自己管理ServiceHost实例。在IIS中托管时,基地址始终是服务的.svc文件中指定的地址。因此,您必须使用IIS托管的服务端点的相对端点地址。
因此“http://MyIPAddress/BKKService/BService.svc”不起作用,您需要使用.svc文件地址。如果您使用IIS Express,则当您浏览svc文件时,添加服务引用的地址应该是url。如果您使用IIS,则它是在IIS中为.svc文件指定的地址。

+0

对不起,我是这个领域的新手,请根据我的代码清楚地告诉我。请.. – RobinsonIT