2011-04-21 4 views
3

하나의 서비스 계약이 다른 계약에서 파생되고 파생 된 계약에 확장 메서드가있는 두 개의 WCF 서비스를 사용할 수 있습니까? WCF 클라이언트로부터이 계약에 액세스 한 결과는 무엇입니까? 나는. IDService에 액세스하면 어떻게 될까요? 예.데이터 계약의 확장 메서드

[ServiceContract] 
public interface IBaseService 
{ 
    public void A(); 
    ... 
} 

[ServiceContract] 
public interface IDService: IBaseService 
{ 
    public static void B(this IBaseService S); 
    .... 
} 

답변

1

좋은 질문 - 많은 머리를 긁어줍니다.

확장 메서드는 WCF 및 WSDL에서 의미가 없습니다.

Service Reference을 사용하여 클라이언트를 생성 한 경우 WSDL은 확장 메서드에 대해 알지 못하므로 확장 메서드를 볼 수 없으므로 사용할 수 없습니다.

DLL/Project reference을 사용하면 코드가 로컬이 아닌 프록시를 통해 호출됩니다.

2

인터페이스에서 정적 메서드를 정의 할 수 없으며 위에서 지정한 액세스 수정 자 public도 정의 할 수 없습니다.