ADO.NET 데이터 서비스 시스템 쿼리 옵션
URI 시스템 쿼리 옵션은 요청에 대한 응답을 제어하기 위해 ADO.NET 데이터 서비스에서 사용하는 지시문을 나타냅니다. 다음 표에서는 ADO.NET 데이터 서비스에서 지원하는 옵션을 간략히 소개합니다.
지원되는 시스템 쿼리 옵션 요약
다음 표에서는 ADO.NET 데이터 서비스 URI에 사용되는 쿼리 옵션을 소개하고 그에 대한 설명을 제공합니다. 이러한 옵션을 쿼리에 추가하여 결과를 제한하거나 정렬할 수 있습니다.
옵션 | 설명 |
---|---|
$expand |
대상 집합에서 참조하는 집합이 지연된 콘텐츠가 아니라 인라인으로 반환되도록 요청할 때 사용합니다. |
$filter |
대상 집합에서 지정된 조건자를 만족하는 요소만 반환합니다. |
$orderby |
대상 엔터티 집합을 오름차순 또는 내림차순으로 정렬합니다. |
$skip |
대상에서 n개의 항목을 검색한 다음 n+1개의 항목을 집합의 끝에 반환합니다. |
$top |
대상 집합에서 상위 n개의 항목을 반환합니다. |
해당 작업을 지원하지 않는 리소스에 대한 URI에 쿼리 옵션이 포함된 경우 400 잘못된 요청 응답 코드가 반환됩니다.
쿼리 옵션의 적용 순서
ADO.NET 데이터 서비스는 아래 목록에 나오는 순서대로 쿼리 옵션을 적용합니다. 특정 옵션이 없으면 해당 단계를 건너뜁니다.
$filter
. 반환되는 요소 집합을 제한합니다.
$orderby
. 반환되는 요소의 순서를 설정합니다.
$skip
. 지정된 수만큼 요소를 건너뜁니다.
$top
. 반환되는 요소의 수를 제한합니다.
$expand
. 반환되는 기본 요소와 함께 관련된 콘텐츠도 반환합니다.
URI http://www.example.com/service.svc/Orders?$orderby=ID&$top=10&$skip=10
은 반환된 ID 속성 값을 기준으로 정렬된 목록에서 11번부터 21번까지의 주문이 반환됨을 나타냅니다.
URI별 지원되는 시스템 쿼리 옵션
다음 표에서는 각 URI 구문 유형에서 지원되거나 지원되지 않는 쿼리 옵션을 보여 줍니다. 먼저 각 구문 예제가 나온 다음 해당 구문에서 지원되는 옵션이 설명되어 있는 표가 나옵니다.
URI: serviceName/<EntitySet>
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
엔터티 집합을 반환합니다. |
$filter |
예 |
엔터티 집합을 반환합니다. |
$orderby |
예 |
엔터티 집합을 반환합니다. |
$skip |
예 |
엔터티 집합을 반환합니다. |
$top |
예 |
엔터티 집합을 반환합니다. |
URI: serviceName/<ResourceSet>(KeyPredicate)
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
지정된 조건으로 식별되는 리소스를 반환하며, 이는 일반적으로 기본 리소스 집합과 관계가 있는 데이터입니다. |
$filter |
예 |
필터 조건이 참이면 리소스를 반환하고, 그렇지 않으면 404 리소스를 찾을 수 없음 응답을 반환합니다. |
$orderby |
아니요 |
|
$skip |
아니요 |
|
$top |
아니요 |
URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceComplexType>
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
복합 형식은 URI에 |
$filter |
예 |
필터 조건이 참이면 복합 형식 인스턴스를 반환하고, 그렇지 않으면 404 리소스를 찾을 수 없음 응답을 반환합니다. |
$orderby |
아니요 |
|
$skip |
아니요 |
|
$top |
아니요 |
URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceComplexType>/<ResourceProperty>
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
복합 형식은 URI에 |
$filter |
아니요 |
|
$orderby |
아니요 |
|
$skip |
아니요 |
|
$top |
아니요 |
URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceProperty>
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
복합 형식은 URI에 |
$filter |
아니요 |
|
$orderby |
아니요 |
|
$skip |
아니요 |
|
$top |
아니요 |
URI: serviceName/<Resource Set>(KeyPredicate)/<ResourceNavigationProperty>
다음 표에서는 앞의 예제에 나오는 탐색 속성이 일대일 또는 다대일 관계를 나타낼 경우의 쿼리 옵션을 소개합니다.
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
엔터티 형식 인스턴스를 반환합니다. |
$filter |
예 |
엔터티 형식 인스턴스를 반환합니다. |
$orderby |
아니요 |
|
$skip |
아니요 |
|
$top |
아니요 |
다음 표에서는 탐색 속성이 일대다 또는 다대다 관계를 나타낼 경우의 쿼리 옵션을 소개합니다.
옵션 | 지원됨 | 설명 |
---|---|---|
$expand |
예 |
엔터티 집합을 반환합니다. |
$filter |
예 |
엔터티 집합을 반환합니다. |
$orderby |
예 |
엔터티 집합을 반환합니다. |
$skip |
예 |
엔터티 집합을 반환합니다. |
$top |
예 |
엔터티 집합을 반환합니다. |