6

BasicHttp および NetTcp バインディングを公開する WCF サービスを構築しています。また、対応する 2 つの 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 エンドポイントを本当に追加する必要がありますか? クライアントは、tcp を使用して通信するかどうかに関係なく、常にメタデータの検出に Http mex エンドポイントを使用するだけではありませんか?

ありがとう

4

2 に答える 2

1

はい、HTTPmexエンドポイントのみを使用できます。クライアントがHTTP経由で通信できることを前提としています。

于 2009-04-02T13:25:28.703 に答える
1

いいえ、コードの前提は、通信チャネルが http または net tcp のいずれかであるということです。

両方を宣言しない場合は、サービス/クライアントが 1 つのバインディングのみを介して通信するように制限していることを意味します。

于 2012-04-20T11:53:08.707 に答える