多个绑定的WCF Mex端点

时间:2009-04-02 11:06:11

标签: c# wcf mex

我正在构建一个WCF服务,它将公开BasicHttp和NetTcp绑定。我还添加了两个相应的Mex端点,即

<service name="WCFTest.CalculatorService" behaviorConfiguration="WCFTest.CalculatorBehavior">
  <host>
    <baseAddresses>
      <add baseAddress = "http://localhost:8000/WCFTest/CalculatorService/" />
      <add baseAddress = "net.tcp://localhost:9000/WCFTest/CalculatorService/" />
    </baseAddresses>
  </host>

  <endpoint address ="basicHttpEP" binding="basicHttpBinding" contract="WCFTest.ICalculatorService"/>
  <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>

  <endpoint address ="netTcpEP" binding="netTcpBinding" contract="WCFTest.ICalculatorService"/>
  <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange"/>        
</service>

我是否真的需要添加NetTcp Mex端点以及BasicHttp Mex端点?客户不仅总是使用Http mex端点进行元数据解析,无论他们是否要使用tcp进行通信?

由于

2 个答案:

答案 0 :(得分:1)

是的,您只能使用HTTP mex端点。我认为假设您的客户端可以通过HTTP进行通信。

答案 1 :(得分:1)

不,您的代码中的假设是通信通道可以是http或net tcp。

如果您没有声明这两者,则意味着您要限制服务/客户端仅通过一个绑定进行通信。