ObjectQuery<T>.Include(String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die verbundenen Objekte an, die in die Abfrageergebnisse eingeschlossen werden sollen.
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)
Parameter
- path
- String
Durch Punkte getrennte Liste verbundener Objekte, die in den Abfrageergebnissen zurückgegeben werden sollen.
Gibt zurück
Eine neue ObjectQuery<T> mit dem definierten Abfragepfad.
Ausnahmen
path
ist null
.
path
ist empty
.
Beispiele
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()));
}
}
}
Hinweise
Abfragepfade können mit Entity SQL- und LINQ-Abfragen verwendet werden.
Pfade sind allumfassend. Wenn beispielsweise ein include-Aufruf angibt Include("Orders.OrderLines")
, wird OrderLines
nicht nur eingeschlossen, sondern auch Orders
. Weitere Informationen finden Sie unter Laden verknüpfter Objekte.
Beim Aufruf der Include-Methode ist der Abfragepfad nur für die zurückgegebene Instanz der ObjectQuery<T> gültig. Andere Instanzen von ObjectQuery<T> und der Objektkontext selbst werden nicht beeinflusst.
Da die Include-Methode das Abfrageobjekt zurückgibt, kann diese Methode mehrmals für eine ObjectQuery<T> aufgerufen werden, um, wie im folgenden Beispiel, mehrere Pfade für die Abfrage anzugeben:
// 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");