Partager via


ObjectQuery<T>.Include(String) Méthode

Définition

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");

S’applique à

Voir aussi