ObjectQuery<T>.Include(String) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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 kropką lista powiązanych obiektów, które mają być zwracane w wynikach zapytania.
Zwraca
Nowa ObjectQuery<T> z 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ą all-inclusive. 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.
Po wywołaniu Include metody ścieżka zapytania jest prawidłowa tylko w zwróconym wystąpieniu klasy ObjectQuery<T>. Nie ma to wpływu na inne wystąpienia ObjectQuery<T> kontekstu obiektu i samego kontekstu obiektu.
Include Ponieważ metoda zwraca obiekt zapytania, można wywołać tę metodę 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");