2009-04-02 14 views
6

Sto creando un servizio WCF che esporrà i collegamenti BasicHttp e NetTcp. Ho anche aggiunto due corrispondenti endpoint Mex, vale a direPunti finali WCF Mex per attacchi multipli

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

Ho davvero bisogno di aggiungere un endpoint NetTcp Mex, nonché un endpoint BasicHttp Mex? I clienti non utilizzeranno sempre l'endpoint mex Http per la disassociazione dei metadati, indipendentemente dal fatto che comunichino usando tcp o no?

Grazie

risposta

1

Sì, è possibile utilizzare solo l'endpoint mex HTTP. Penso che l'ipotesi sia che il tuo cliente possa comunicare via HTTP.

+0

intendevi dire "Penso che il tuo cliente * solo * comunichi tramite HTTP e non net.tcp per mex" o qualcosa del genere, dal momento che hai consigliato di utilizzare solo l'endpoint http mex? – atconway

+0

Correggere il post –

1

No, il presupposto nel codice è che il canale di comunicazione può essere http o net tcp.

Se non si dichiara entrambi significa che si limita il servizio/cliente a comunicare su una sola rilegatura.

Problemi correlati