如何通过终端地址访问wcf服务?

我使用VS2013创建了一个wcf应用程序项目,创建了一个wcf服务。 我的服务合同是IWCFService,并且我有一个名为WCFService的IWCFService实现

 [ServiceContract]
    public interface IWCFService
    {
        [OperationContract]
        void DoWork();
    }

public class WCFService : IWCFService
    {


        public void DoWork()
        {

          //do something
        }
}

我的服务配置如下:

<system.serviceModel>
    <services>
      <service name="WcfService2.WCFService">
        <endpoint address="" binding="wsHttpBinding" bindingConfiguration=""
          contract="WcfService2.IWCFService" />
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:5831/WCFService" />
          </baseAddresses>
        </host>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <!-- To avoid disclosing metadata information, set the values below to false before deployment -->
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <protocolMapping>
      <add binding="basicHttpsBinding" scheme="https" />
    </protocolMapping>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  </system.serviceModel>

当我开始我的应用程序时,我可以通过url http:// localhost:5831 / WCFService.svc添加服务引用,但是当我尝试通过http:// localhost:5831 / WCFService注释添加服务引用时,为什么我的地址是i在web.config中定义无法帮助?


只有您的服务托管在自己托管的环境中, <baseAddresses>才会起作用。

表示一组baseAddress元素,它们是自托管环境中服务主机的基地址。 如果存在基地址,则可以使用相对于基地址的地址来配置端点。

链接地址: http://www.djcxy.com/p/95905.html

上一篇: How to visit wcf service via endpoint address?

下一篇: Workflow Service (xamlx) using AppFabric not persisting