ObjectQuery<T>.Include(String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie les objets associés à inclure dans les résultats de la requête.
public:
System::Data::Objects::ObjectQuery<T> ^ Include(System::String ^ path);
public System.Data.Objects.ObjectQuery<T> Include(string path);
member this.Include : string -> System.Data.Objects.ObjectQuery<'T>
Public Function Include (path As String) As ObjectQuery(Of T)
Paramètres
- path
- String
Liste séparée par des points des objets associés à retourner dans les résultats de la requête.
Retours
Nouveau ObjectQuery<T> avec le chemin de requête défini.
Exceptions
path a la valeur null.
path a la valeur empty.
Exemples
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
// Define an object query with a path that returns
// orders and items for a specific contact.
Contact contact =
context.Contacts.Include("SalesOrderHeaders.SalesOrderDetails")
.FirstOrDefault();
// Execute the query and display information for each item
// in the orders that belong to the first contact.
foreach (SalesOrderHeader order in contact
.SalesOrderHeaders)
{
Console.WriteLine(String.Format("PO Number: {0}",
order.PurchaseOrderNumber));
Console.WriteLine(String.Format("Order Date: {0}",
order.OrderDate.ToString()));
Console.WriteLine("Order items:");
foreach (SalesOrderDetail item in order.SalesOrderDetails)
{
Console.WriteLine(String.Format("Product: {0} "
+ "Quantity: {1}", item.ProductID.ToString(),
item.OrderQty.ToString()));
}
}
}
Remarques
Les chemins de requête peuvent être utilisés avec des requêtes Entity SQL et LINQ.
Les chemins sont tous inclusifs. Par exemple, si un appel include indique Include("Orders.OrderLines"), non seulement sera OrderLines inclus, mais également Orders. Pour plus d’informations, consultez Chargement d’objets connexes.
Lorsque vous appelez la Include méthode, le chemin de requête est valide uniquement sur l’instance retournée du ObjectQuery<T>. D’autres instances du ObjectQuery<T> contexte d’objet lui-même ne sont pas affectées.
Étant donné que la Include méthode retourne l’objet de requête, vous pouvez appeler cette méthode plusieurs fois sur un ObjectQuery<T> pour spécifier plusieurs chemins d’accès pour la requête, comme dans l’exemple suivant :
// Create a SalesOrderHeader query with two query paths,
// one that returns order items and a second that returns the
// billing and shipping addresses for each order.
ObjectQuery<SalesOrderHeader> query =
context.SalesOrderHeaders.Include("SalesOrderDetails").Include("Address");