2009-02-02 2 views
0

WCF로 작성된 타사 응용 프로그램이 있습니다. Windows 서비스로 설치되며 기본적으로 wsHttpBindingbasicHttpBinding을 지원합니다.타사 구성 요소의 WCF 바인딩을 변경하는 방법은 무엇입니까?

로 전환하는 방법이 존재하는 이상 등 tcpBinding 또는 named pipes 결합 최적화?

동일한 서버에서 서비스를 사용하므로 명명 된 파이프가 옵션입니다.

Windows 서비스의 .config 파일을 수정하여 타사에서 수행 할 수 있는지 알고 싶습니다.

답변

3

언급 한 WCF 서버 서비스가 ".config"파일을 사용하여 초기화하는 경우 동작을 수정할 수 있어야합니다 (설정 파일을 사용할 때의 전체적인 점 : 해당 구성 파일을 다시 컴파일하지 않고도 매개 변수를 수정할 수 있음). 암호).

새 바인딩 구성을 추가하고 엔드 포인트의 "binding"및 "bindingConfiguration"속성을 수정하여 새로운 것을 지정하십시오.

클라이언트 구성에서 동일한 바인딩 유형을 설정하거나 metadataExchange를 구성한 경우 서비스 참조를 업데이트하고 클라이언트 구성이 업데이트되었는지 확인하십시오.

+0

감사합니다. 나는 곧 해봐. –

0

다르게 호스트하려는 유형과 일치하는 계약 속성이있는 서비스에 대한 app.config의 새로운 바인딩 구성 만 있으면됩니다. 이렇게하면 별도의 서비스 호스트가 생성되며 구성 요소/서비스와 관련이있을 수도 있고 그렇지 않을 수도 있습니다. WCF가 사용할 바인딩/끝점 구성을 WCF가 결정하는 방식이므로 계약 속성이 핵심입니다. "WCF ABC = Address, Binding, Contract", 세 가지를 지정하면 실행 중이어야합니다.

웹 응용 프로그램 프로젝트에서 필요한 어셈블리를 참조하고 적절한 기본 클래스를 식별하는 데 필요한 .svc 파일을 작성하여 Windows 서비스 WCF 서비스를 IIS WCF 서비스로 호스팅 할 수도 있습니다.