Nouveautés : Améliorations des requêtes
Dernière modification : lundi 12 avril 2010
S’applique à : SharePoint Foundation 2010
Microsoft SharePoint Foundation 2010 offre plusieurs nouveaux moyens d’effectuer des requêtes sur des données et de filtrer des données.
Nouvelle prise en charge des requêtes pour le code côté serveur
Effectuer des requêtes de données en code serveur est devenu beaucoup plus facile et plus puissant dans SharePoint Foundation 2010.
Fournisseur LINQ to SharePoint
Lorsque votre code doit effectuer une requête sur des données de liste, il n’est plus nécessaire de composer une requête Langage CAML (Collaborative Application Markup Language). SharePoint Foundation 2010 inclut un fournisseur LINQ to SharePoint pour permettre à votre code d’effectuer des requêtes sur des listes SharePoint à partir de code serveur à l’aide de la syntaxe LINQ. Le fournisseur traduit vos requêtes LINQ en requêtes CAML pour les soumettre à la base de données de contenu. Comme SharePoint Foundation 2010 ajoute également un nouvel élément Join au schéma de requête, vous pouvez avoir à la fois des jointures implicites et des jointures explicites dans vos requêtes LINQ en utilisant le mot clé join. (Voir « Jointures de listes prises en charge dans les requêtes CAML » ci-dessous.) Vous pouvez aussi écrire dans les listes à l’aide du fournisseur. Comme toujours avec un fournisseur LINQ, vous devez avoir des classes qui fournissent une interface orientée objet avec les bases de données de contenu relationnelles. Ces classes sont générées pour vous par l’outil SPMetal qui est inclus avec SharePoint Foundation 2010. Pour plus d’informations sur le fournisseur LINQ to SharePoint, voir Gestion des données avec LINQ to SharePoint. Pour plus d’informations sur SPMetal, voir SPMetal.
Vous pouvez utiliser la syntaxe LINQ dans votre code même si vous n’utilisez pas le fournisseur LINQ to SharePoint. Tout objet SharePoint Foundation qui implémente IEnumerable<T> peut faire l’objet d’une requête avec la syntaxe LINQ. Pour plus d’informations, voir LINQ to Objects.
Jointures de listes prises en charge dans les requêtes CAML
Vous pouvez maintenant effectuer des jointures sur plusieurs listes dans une même requête avec le nouvel Élément Join (Afficher). Utilisez le nouvel élément ProjectedFields, élément (View) pour spécifier les champs de liste à inclure dans les résultats. Certains détails doivent être pris en compte lors de l’utilisation de ces éléments. Pour plus d’informations, voir Jointures de listes et projections.
Requêtes en code côté client
Il y a eu des changements très importants dans la façon dont les applications clientes accèdent aux données SharePoint Foundation.
Requêtes dans le modèle objet client
Vous pouvez effectuer des requêtes dans le modèle objet client de deux façons :
Écrire des requêtes CAML pour les utiliser avec la classe SPQuery.
Interroger un objet SharePoint Foundation qui implémente IEnumerable<T> avec LINQ to Objects.
Prise en charge de l’infrastructure de services de données ADO.NET
Si votre application cliente n’utilise pas le nouveau modèle objet client SharePoint Foundation et que vous devez seulement effectuer des requêtes sur des données de liste, il vous est possible d’effectuer des requêtes sur les bases de données de contenu en utilisant l’ADO.NET Data Services Framework.
Éviter d’utiliser des services Web fournissant des données SharePoint
Les versions antérieures du produit SharePoint Foundation fournissaient un ensemble de services Web permettant l’interaction des clients avec des déploiements SharePoint Foundation. Certains de ces services, tels que le List Data Retrieval Web Service, sont toujours pris en charge dans le but de fournir une compatibilité descendante et une interopérabilité avec les clients des services Web. Pour une meilleure performance et une meilleure utilisabilité, nous vous recommandons d’utiliser le modèle objet client ou l’infrastructure de services de données ADO.NET.
Éviter d’effectuer des appels directs à owssvr.dll
Le Kit de développement logiciel (SDK) Microsoft SharePoint Foundation 2010 inclut encore de la documentation sur l’accès côté client à des déploiements SharePoint Foundation à l’aide d’appels RPC, mais ces informations y figurent seulement au titre d’assistance à la résolution des problèmes pour les applications clientes effectuant de tels appels. Pour optimiser la compatibilité de vos nouvelles applications clientes avec les versions futures de SharePoint Foundation, nous vous recommandons de ne pas effectuer d’appels directs au fichier owssvr.dll comme méthode d’accès client.