2014-12-04 5 views
0

친구들! WebGet 메서드의 WCF Data Service에서 탐색 속성을 가져 오는 데 문제가 있습니다.WCF 데이터 서비스의 WebGet 메서드를 통해 탐색 속성 검색

  1. 나는 ProxyCreationEnabled을 끄고 내가 [DataContractAttribute(IsReference=true)][DataMember] 속성이
  2. LazyLoadingEnabled.
  3. 서비스 측면에서 채워진 속성을 볼 수 있지만 클라이언트 측에서는 해당 속성이 표시되지 않습니다.
  4. 나는 보통의 WCF 서비스 ([ServiceContract] 속성을 기반으로)를 만들었고 그 클라이언트에서 나는 채워진 속성들을 보았다.

내가 뭘 잘못하고 있니? 많은 감사합니다!

답변

0

엔터티가 ComplexTypes가 아니라 EntityType (자체 컬렉션에서 검색 할 수 있음) 인 경우 기본적으로 채워지지 않습니다. 이 작동이 구현하고있는 중 하나로, OData의 당신이 사용하는 WCF의 DataServices에의 버전을 확인하지 않는 경우

<host>/urlForResource?$expand=Property1,Property2 

을 : 당신은 사용해야합니다. 이전 버전을 사용하는 경우 $ expand는 WCF DataServices에서 구현되지 않을 수 있습니다.

또한 WebApi의 OData 서비스에는 $ expand와 같은 매개 변수를 지원하기 위해 추가해야하는 [EnableQuery] 특성이 있으며 WCF DataServices에서 쿼리 옵션을 사용하는 방법을 찾습니다.