2011-09-23 2 views
0

내 dll에 웹 서비스에 대한 서버 참조가 있습니다. 이 WCF 웹 서비스는 DLL을 사용하는 클라이언트 응용 프로그램에 표시됩니다. 이것을 막을 수있는 방법이 있습니까?C#, WCF, dll을 통해 웹 서비스 숨기기

감사합니다.

답변

3

서비스 참조를 추가 할 때 "고급"버튼을 클릭하십시오. 이렇게하면 모든 클라이언트 서비스 클래스를 공개 대신 내부로 생성 할 수있는 옵션이 제공됩니다.

enter image description here

+0

굉장! 그게 다야, 고마워! – righteye

0

참조가 URL에 내장 된 경우 표시 될 사실을 처리해야합니다. 대안은 서비스 참조를 사용하지 않는 것입니다. 코드에서 WCF 채널 스택을 사용하여 서비스 참조 없이도 서비스를 호출 할 수 있습니다.

이렇게하려면 클라이언트는 서비스 인터페이스에 대한 참조와 서비스 작업에 노출되는 유형 만 필요합니다. 그런 다음 ChannelFactory<ServiceInterface>("NameOfServiceInConfigFile").CreateChannel()을 사용하여 프록시를 반환 할 수 있습니다.

+0

"WCF 채널 스택"에 익숙하지 않습니다. 나는 그것을 조사 할 것이다. 감사. – righteye

+0

나는이 문제를 해결하기 위해 내 대답을 보냈다. –