Pergunta

Eu estou construindo um serviço WCF que irá expor BasicHttp e NetTcp ligações. Eu também acrescentou dois correspondentes endpoints Mex, i.

<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>

Será que eu realmente preciso adicionar um ponto final NetTcp Mex, bem como um ponto final BasicHttp Mex? Será que os clientes não apenas sempre usar o Http mex endpoint para meta disocvery dados independentemente de se eles vão se comunicar usando TCP ou não?

Graças

Foi útil?

Solução

Sim, você pode usar apenas o HTTP mex endpoint. Acho que a idéia é que o seu cliente pode se comunicar através de HTTP.

Outras dicas

Não, a suposição no seu código é que o canal de comunicação pode http ou tcp net.

Se você não declarar ambos Isso significa que você está restringindo o serviço / cliente para se comunicar através de uma única ligação.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top