2011-10-14 4 views
1

네트워크와 같은 메시의 일부인 WCF 서비스가 있습니다. 즉, 동일한 서비스를 제공하는 10 대 이상의 머신이 있지만 이러한 모든 머신은 다른 머신에 연결하여 데이터를 검색해야합니다. 따라서 응용 프로그램이 서비스를 노출하고 다른 시스템의 동일한 서비스에 연결될 수도 있습니다.서버와 클라이언트 모두의 WCF 서비스

현재 서비스 내부의 서비스에 대한 참조가 추가되었지만 프로그램이 서비스이므로 상당히 낭비가되는 것 같습니다. 즉, 기본적으로 자체에 대한 서비스 참조를 만들었으며, 내가 뭔가를 변경할 때마다이 참조를 업데이트해야합니다.

어떤 식 으로든이 문제를 해결하고 서비스 참조를 추가하지 않고 서비스를 사용할 수 있습니까?

문제는 서비스 참조가 없으면 서비스를 설정하는 데 사용하는 프록시 클래스가 없다는 것입니다. 현재, 나는 다음과 같은 코드를 사용하여 다른 시스템에서 서비스에 연결 :

var client = new MyServiceClient(binding, otherMachineEndpointAddress); 
//call some methods on client 

나는 서비스 클라이언트를 만드는이 부분을 대체 할 수있는 경우, 서비스에 연결하고 내 메소드를 호출하는 응용 프로그램이 될 것입니다 크게 단순화.

아이디어가 있으십니까?

답변

1

오랫동안 답을 찾으려고 노력했지만이 질문을 게시 한 후 어떻게해야하는지 알았습니다. 정말 쉽습니다.

나는 매력으로 근무이

var client = ChannelFactory<IMyService>.CreateChannel(binding, otherMachineEndpointAddress); 
//call some methods on client 

으로 질문에서 언급 한 코드를 대체)

관련 문제