Définition des chemins d'accès des requêtes (EntityDataSource)
Mise à jour : novembre 2007
Vous pouvez définir quels objets sont retournés avec l'objet spécifiquement demandé à l'aide de la propriété Include du contrôle EntityDataSource pour spécifier une liste de chemins d'accès de requête séparés par des virgules. Chaque valeur séparée par une virgule dans la chaîne est passée, sans modification, comme un appel séparé à la méthode Include de ObjectQuery<T> qui est la source de données pour le contrôle EntityDataSource.
La chaîne fournie à la propriété Include utilise le même format que celle passée à la méthode Include de ObjectQuery<T>. Pour des exemples d'utilisation des chemins d'accès de requête pour charger automatiquement des objets connexes, consultez Comment : utiliser des chemins d'accès de requête pour personnaliser des résultats (Entity Framework).
Exemple
Le balisage XML suivant définit un chemin d'accès de requête qui retourne des objets SalesOrderHeader liés à l'objet Contact retourné. Avec chaque SalesOrderHeader, les objets SalesOrderDetail et Address sont également retournés.
<asp:EntityDataSource ID="ContactDataSource"
AutoGenerateWhereClause="True" ConnectionString="name=AdventureWorksEntities"
DefaultContainerName="AdventureWorksEntities" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" EntitySetName="Contact"
Include="SalesOrderHeader.SalesOrderDetail, SalesOrderHeader.Address">
<WhereParameters>
<asp:ControlParameter ControlID="customerId" Name="ContactID"
PropertyName="Text" />
</WhereParameters>
</asp:EntityDataSource>
L'exemple XML précédent est identique au ObjectQuery<T> suivant nommé contacts :
ObjectQuery<Contact> contacts =
context.Contact
.Where("it.ContactID = @ContactID",
new ObjectParameter("ContactID", customerId))
.Include("SalesOrderHeader.SalesOrderDetail")
.Include("SalesOrderHeader.Address");
Voir aussi
Concepts
Configuration du contrôle EntityDataSource
Filtrage des données (EntityDataSource)