首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WCF MEX端点

WCF MEX端点
EN

Stack Overflow用户
提问于 2012-01-26 17:45:06
回答 1查看 8.2K关注 0票数 1

我正在尝试向我的服务添加一个MEX端点。当我开始服务的时候

WCF服务主机找不到任何服务元数据。这可能导致客户端应用程序不正确地运行。请检查是否启用元数据。你想退出吗?

这是我的配置文件:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <system.web>
    <compilation debug="true" />
  </system.web>

  <system.serviceModel>
    <services>
      <service name="WcfServiceLibrary1.CustomerService"
               behaviorConfiguration="Metadata">

        <endpoint address="" 
                  binding="wsHttpBinding" 
                  contract="WcfServiceLibrary1.IService1">
          <identity>
            <dns value="localhost" />
          </identity>
        </endpoint>

        <endpoint address="mex" 
                  binding="mexHttpBinding" 
                  contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8000" />
          </baseAddresses>
        </host>

      </service>
    </services>

    <behaviors>
      <serviceBehaviors>
        <behavior name="Metadata">
          <serviceMetadata httpGetEnabled="true" />
        </behavior>
        <behavior>
          <serviceMetadata httpGetEnabled="True"/>
          <serviceDebug includeExceptionDetailInFaults="False" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>

</configuration>

有人知道我为什么还会收到这个消息吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-04-01 01:42:16

您不必指定mex端点和httpGetEnabled。只有一个才能公开元数据。不要特别指定httpGetUrl,因为这取决于您的托管环境。

试试这个..。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <system.web>
    <compilation debug="true" />
  </system.web>

  <system.serviceModel>
    <services>
      <service name="WcfServiceLibrary1.CustomerService"
               behaviorConfiguration="Metadata">

        <endpoint address="" 
                  binding="wsHttpBinding" 
                  contract="WcfServiceLibrary1.IService1">
          <identity>
            <dns value="localhost" />
          </identity>
        </endpoint>

        <endpoint address="mex" 
                  binding="mexHttpBinding" 
                  contract="IMetadataExchange" />
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8000" />
          </baseAddresses>
        </host>

      </service>
    </services>   
  </system.serviceModel>

</configuration>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9022734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档