2009-12-11 7 views

답변

11

동일한 계약서에는 여러 끝점을, clieint 구성에는 다른 주소를 사용할 수 있습니다. 문제가 없습니다.

<endpoint> 태그의 고유 한 name= 속성으로 구분해야합니다. 당신이 당신의 클라이언트 프록시를 만들 때

<client> 
    <endpoint name="tcpEndpoint" 
      address="net.tcp://server:8888/SomeService" 
      binding="netTcpBinding" 
      contract="IYourService" /> 
    <endpoint name="httpEndpoint" 
      address="http://server:8777/SomeService" 
      binding="basicHttpBinding" 
      contract="IYourService" /> 
</client> 

, 당신은 당신이 사용하려는 엔드 포인트의 이름을 제공해야합니다

YourClient client = new YourClient("netTcpEndpoint"); 

을 당신은 더 이상 당신의 클라이언트를 인스턴스화 할 수 없습니다를하고 "를 찾을 것으로 예상 "여러 점이 있기 때문에 사용할 끝점입니다 (아무 것도 지정하지 않으면 사용되는"기본값 "으로 정의 할 방법이 없습니다).

- 그 외에는 문제가 발생하지 않는다고 생각합니다.

+0

예. ex : basicHttpbinding + wsHttpBinding + netTcpBinding과 동시에 연결하는 것은 의미가 없습니다. – vidalsasoon

+0

@vidal : 실제로는 아니지만 :-)하지만 ** 당신은 ** 잠재적으로 한 클라이언트가 netTcp를 거쳐 갈 수 있고 다른 클라이언트 인스턴스는 http를 거쳐 갈 수 있습니다. ** could ** ** ;-) –

+1

실생활의 경우 Java 웹 클라이언트와. thick 클라이언트가있는 경우. 자바 클라이언트는 http와 .Net 클라이언트를 사용합니다. net.tcp – softveda

관련 문제