ObjectQuery<T>.Include(String) Metoda

Definicja

Określa powiązane obiekty do uwzględnienia w wynikach zapytania.

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)

Parametry

path
String

Rozdzielona kropkami lista powiązanych obiektów, które mają być zwracane w wynikach zapytania.

Zwraca

Nowy ObjectQuery<T> ze zdefiniowaną ścieżką zapytania.

Wyjątki

path to null.

path to empty.

Przykłady

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()));
        }
    }
}

Uwagi

Ścieżki zapytań mogą być używane z zapytaniami Entity SQL i LINQ.

Ścieżki są w całości inkluzywne. Jeśli na przykład wywołanie dołączania wskazuje Include("Orders.OrderLines"), nie tylko zostanie OrderLines uwzględnione, ale także Orders. Aby uzyskać więcej informacji, zobacz Ładowanie powiązanych obiektów.

Podczas wywoływania Include metody ścieżka zapytania jest prawidłowa tylko dla zwróconego ObjectQuery<T>wystąpienia klasy . Nie ma to wpływu na inne wystąpienia ObjectQuery<T> kontekstu obiektu i samego kontekstu obiektu.

Include Ponieważ metoda zwraca obiekt zapytania, tę metodę można wywołać wiele razy na obiekcie ObjectQuery<T> , aby określić wiele ścieżek dla zapytania, jak w poniższym przykładzie:

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

Dotyczy

Zobacz też