Options de requête système d'ADO.NET Data Services

Les options de requête système URI représentent des directives utilisées par ADO.NET Data Services pour contrôler la réponse à une requête. Les tableaux suivants résument les options prises en charge par ADO.NET Data Services.

Résumé des options de requête système prises en charge

Les tableaux suivants listent et décrivent les options de requête utilisées par les URI d'ADO.NET Data Services. Ces options peuvent être ajoutées à des requêtes pour pouvoir restreindre ou trier les résultats.

Option Description

$expand

Permet de demander à ce que les jeux référencés par le jeu de cibles soient renvoyés en ligne et non pas en tant que contenu différé.

$filter

Retourne uniquement les éléments du jeu de cibles qui sont conformes au prédicat spécifié.

$orderby

Trie le jeu d'entités cible par ordre croissant ou décroissant.

$skip

Recherche des éléments n dans la cible, puis retourne des éléments n+1 jusqu'à la fin du jeu.

$top

Retourne les éléments n supérieurs du jeu de cibles.

Si une option de requête est incluse avec un URI vers une ressource qui ne prend pas en charge l'opération, un code de réponse 400 (Requête incorrecte) est retourné.

Ordre de l'application de l'option de requête

Lorsque ADO.NET Data Service applique l'ordre de la requête, il le fait dans l'ordre spécifié par la liste suivante. Si une des options est manquante, l'étape correspondante est ignorée.

$filter. Ce paramètre restreint le jeu des éléments retournés.

$orderby. Ce paramètre définit l'ordre des éléments retournés.

$skip. Ce paramètre ignore plusieurs éléments

$top. Ce paramètre restreint le nombre d'éléments retournés.

$expand. Ce paramètre retourne le contenu associé avec des éléments de base retournés.

Le URI http://www.example.com/service.svc/Orders?$orderby=ID&$top=10&$skip=10 indique que les commandes retournées sont comprises entre le n°11 et le n°21 dans la liste des commandes triées par leurs valeurs de propriété ID.

Options de requête système prises en charge par URI

Les tableaux suivants énumèrent les options de requête qui sont prises en charge ou pas par chaque type de syntaxe URI. Chaque exemple de syntaxe est suivi d'un tableau qui liste les options prises en charge pour celle-ci.

URI: serviceName/<EntitySet>
Option Prise en charge Remarques

$expand

Oui

Retourne un jeu d'entités.

$filter

Oui

Retourne un jeu d'entités.

$orderby

Oui

Retourne un jeu d'entités.

$skip

Oui

Retourne un jeu d'entités.

$top

Oui

Retourne un jeu d'entités.

URI: serviceName/<ResourceSet>(KeyPredicate)
Option Prise en charge Remarques

$expand

Oui

Retourne des ressources identifiées par les conditions spécifiées, généralement des données en relation avec le jeu de ressources de base.

$filter

Oui

Retourne les ressources si la condition de filtre est vraie ; autrement, une réponse 404 (Ressource introuvable) est retournée.

$orderby

Non

$skip

Non

$top

Non

URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceComplexType>
Option Prise en charge Remarques

$expand

Oui

Les types complexes sont toujours étendus même si $expand n'est pas présent dans l'URI.

$filter

Oui

Retourne une instance de type complexe si la condition de filtre est vraie ; autrement, une réponse 404 (Ressource introuvable) est retournée.

$orderby

Non

$skip

Non

$top

Non

URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceComplexType>/<ResourceProperty>
Option Prise en charge Remarques

$expand

Oui

Les types complexes sont toujours étendus même si $expand n'est pas présent dans l'URI. La propriété de ressource n'a pas de propriété qui lui est propre pouvant être étendue si celle-ci n'est pas de type complexe.

$filter

Non

$orderby

Non

$skip

Non

$top

Non

URI: serviceName/<ResourceSet>(KeyPredicate)/<ResourceProperty>
Option Prise en charge Remarques

$expand

Oui

Les types complexes sont toujours étendus même si $expand n'est pas présent dans l'URI. La propriété de ressource n'a pas de propriété qui lui est propre pouvant être étendue si celle-ci n'est pas de type complexe.

$filter

Non

$orderby

Non

$skip

Non

$top

Non

URI: serviceName/<Resource Set>(KeyPredicate)/<ResourceNavigationProperty>

Si la propriété de navigation dans l'exemple précédent représente une relation de type un-à-un ou une relation de type plusieurs-à-un, les options de requête sont décrites par le tableau suivant :

Option Prise en charge Remarques

$expand

Oui

Retourne une instance de type d'entité.

$filter

Oui

Retourne une instance de type d'entité.

$orderby

Non

$skip

Non

$top

Non

Si la propriété de navigation représente une relation de type un-à-plusieurs ou une relation de type plusieurs à plusieurs, les options de requête sont décrites par le tableau suivant :

Option Prise en charge Remarques

$expand

Oui

Retourne un jeu d'entités

$filter

Oui

Retourne un jeu d'entités

$orderby

Oui

Retourne un jeu d'entités

$skip

Oui

Retourne un jeu d'entités

$top

Oui

Retourne un jeu d'entités

Voir aussi

Concepts

Options de requêtes d'ADO.NET Data Services
Paramètres d'opération de service (ADO.NET Data Services Framework)