6

我正在构建一个 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 进行通信?

谢谢

4

2 回答 2

1

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

于 2009-04-02T13:25:28.703 回答
1

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

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

于 2012-04-20T11:53:08.707 回答