2010-10-05 4 views
5

정말 WCF 데이터 서비스 쿼리에서 'DISTINCT'를 수행 할 수 있어야합니다.WCF 데이터 서비스 (OData) 쿼리에서 '고유'를 수행 할 수 있습니까?

내가 알 수있는 바로는, 그러한 기능은 존재하지 않습니다. 클라이언트의 Linq 쿼리에서 Distinct 확장 메서드를 사용할 수 있지만 전체 결과 집합을 여전히 수화한다는 것을 알았습니다 (이 경우에는 원하는 경우가 아닙니다).

아이디어가 있으십니까?

답변

5

내장되어 있지 않습니다. 또한 현재 OData 프로토콜의 일부가 아닙니다 (집계가 count가 아니며 도 분명히 고려해야합니다). 권장되는 방법은 모든 데이터를 검색하고 클라이언트에서 작업을 설정하는 것입니다 (yuck!).

즉, 클라이언트와 서버 모두에서 WCF Data Services를 확장해야만 (이 기능을 제공하기에 충분할 것입니다.

이 작업을 수행하기 위해 항상 WebMethod (이것은 단지 WCF 임)과 함께 할 수 있지만 데이터 서비스를 사용하는 방법이 아닌 것으로 알고 있습니다.

4

WCF 데이터 서비스, 서비스 운영 - http://msdn.microsoft.com/en-us/library/cc668788.aspx을 사용하는 것이 좋습니다 (웹 메서드를 통한). 서비스 운영은 OData 쿼리 구문으로 활성화되지 않은 쿼리 기능을 캡슐화하는 좋은 방법입니다.

관련 문제