2014-02-07 2 views
1

클라이언트가 채널 팩터 리를 통해 wcf 서비스와의 연결을 설정하는 대신 wcf 서비스 참조를 추가하지 않는 경우가 있습니다. 우리가 채널 팩토리를 사용하거나 서비스 참조를 추가 할 때 wcf 서비스가 클라이언트 측에서 wcf 서비스 메타 데이터를 얻는 방법을 자세히 알고 싶습니다. 나는 Google lot을 검색하여 심층적 인 글을 올리지만 그 중 하나를 얻지는 못한다. 그러니 클라이언트 측에서 wcf 서비스 발견에 대해 아주 자세히 논의하는 올바른 기사로 나를 리디렉션하십시오.채널 팩토리가 wcf 서비스 메타 데이터를 얻는 방법

채널 팩토리를 통해 프록시를 만드는 wcf 서비스 추가 참조 &의 차이점은 무엇입니까?

채널 팩토리가있는 wcf 프록시를 만들 때마다 우리는 앱을 실행할 때마다 프록시가 만들어 질 때마다 추측합니다. 그래서 우리는 서비스 참조를 추가 할 때 프록시가 한 번만 생성되기 때문에이 프로세스가 서비스 참조를 추가하는 것보다 느리다 고 생각합니다.

우리는 채널 공장을 사용해야합니다. 채널 공장이 최선의 선택이 될 때 상황을 말해주십시오. 덕분에

답변

0

사실 거의 차이가 없습니다. Add Service Reference가 작성한 코드를 보면 내부적으로 ChannelFactory를 사용하고 있음을 알 수 있습니다. 당신이 서비스 참조 추가를 사용하거나 자신이 수동으로 할 때 발생하는 이해하기

가장 좋은 자원이 당신이 Extending WCF with Custom Behaviors"Adding Behaviors to the Runtime"에 섹션을 읽을 수 있습니다, 또한 Miguel Castro's WCF the Manual Way…the Right Way

, 그것은 메타 데이터를 처리하는 방법을 설명합니다.

기본적으로 ServiceHost를 만들 때 (ServiceHost를 새로 만들 때 명시 적으로 ServiceHost를 만들거나 .svc 파일을 처리하는 IHttpHandler를 사용하여 IIS에서 서비스를 호스트하는 경우) 형식이 먼저 읽혀집니다 속성을 찾은 다음) 구성 파일 (web/app.config). 클라이언트에서도 계약 인터페이스에 주석을 사용하는 것은 일반적이지 않지만 클라이언트에서도 마찬가지입니다.

+0

언제 채널 공장을 이용하면 적절한 상황인지 알려주세요. 덕분에 – Thomas

+0

@ 토마스 내 견해로, ChannelFactory를 사용하는 것이 더 좋습니다. 왜냐하면 Miguel Castro가 설명하는 것처럼 Add Service Reference를 사용하기 때문에, 아마도 당신이 필요로하지 않을 많은 것들을 추가하기 때문입니다 (예 : 데이터 소스, web.config는 예제로만 존재 함). – Rui

관련 문제