DataLoadOptions.LoadWith 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.
Überlädt
| Name | Beschreibung |
|---|---|
| LoadWith(LambdaExpression) |
Ruft angegebene Daten im Zusammenhang mit dem Hauptziel mithilfe eines Lambda-Ausdrucks ab. |
| LoadWith<T>(Expression<Func<T,Object>>) |
Gibt an, welche Unterobjekte abgerufen werden sollen, wenn eine Abfrage für ein Objekt vom Typ T gesendet wird. |
LoadWith(LambdaExpression)
Ruft angegebene Daten im Zusammenhang mit dem Hauptziel mithilfe eines Lambda-Ausdrucks ab.
public:
void LoadWith(System::Linq::Expressions::LambdaExpression ^ expression);
public void LoadWith(System.Linq.Expressions.LambdaExpression expression);
member this.LoadWith : System.Linq.Expressions.LambdaExpression -> unit
Public Sub LoadWith (expression As LambdaExpression)
Parameter
- expression
- LambdaExpression
Ein Lambda-Ausdruck, der das zugehörige Material identifiziert.
Beispiele
Northwnd db = new Northwnd(@"c:\northwnd.mdf");
DataLoadOptions dlo = new DataLoadOptions();
dlo.LoadWith<Customer>(c => c.Orders);
db.LoadOptions = dlo;
var londonCustomers =
from cust in db.Customers
where cust.City == "London"
select cust;
foreach (var custObj in londonCustomers)
{
Console.WriteLine(custObj.CustomerID);
}
Dim db As New Northwnd("c:\northwnd.mdf")
Dim dlo As DataLoadOptions = New DataLoadOptions()
dlo.LoadWith(Of Customer)(Function(c As Customer) c.Orders)
db.LoadOptions = dlo
Dim londonCustomers = _
From cust In db.Customers _
Where cust.City = "London" _
Select cust
For Each custObj In londonCustomers
Console.WriteLine(custObj.CustomerID)
Next
Hinweise
Im folgenden Beispiel werden alle Orders personen, die Customers sich in London befinden, abgerufen, wenn die Abfrage ausgeführt wird. Folglich löst der aufeinander folgende Zugriff auf die Orders Eigenschaft für ein Customer Objekt keine neue Datenbankabfrage aus.
Gilt für:
LoadWith<T>(Expression<Func<T,Object>>)
Gibt an, welche Unterobjekte abgerufen werden sollen, wenn eine Abfrage für ein Objekt vom Typ T gesendet wird.
public:
generic <typename T>
void LoadWith(System::Linq::Expressions::Expression<Func<T, System::Object ^> ^> ^ expression);
public void LoadWith<T>(System.Linq.Expressions.Expression<Func<T,object>> expression);
member this.LoadWith : System.Linq.Expressions.Expression<Func<'T, obj>> -> unit
Public Sub LoadWith(Of T) (expression As Expression(Of Func(Of T, Object)))
Typparameter
- T
Typ, der abgefragt wird.
Wenn dieser Typ nicht zugeordnet ist, wird eine Ausnahme ausgelöst.
Parameter
- expression
- Expression<Func<T,Object>>
Gibt das abzurufende Feld oder die Eigenschaft an.
Wenn der Ausdruck kein Feld oder eine Eigenschaft identifiziert, das eine 1:1- oder 1:n-Beziehung darstellt, wird eine Ausnahme ausgelöst.
Beispiele
Im folgenden Beispiel werden alle Orders personen, die Customers sich in London befinden, abgerufen, wenn die Abfrage ausgeführt wird. Folglich löst der aufeinander folgende Zugriff auf die Orders Eigenschaft für ein Customer Objekt keine neue Datenbankabfrage aus.
Northwnd db = new Northwnd(@"c:\northwnd.mdf");
DataLoadOptions dlo = new DataLoadOptions();
dlo.LoadWith<Customer>(c => c.Orders);
db.LoadOptions = dlo;
var londonCustomers =
from cust in db.Customers
where cust.City == "London"
select cust;
foreach (var custObj in londonCustomers)
{
Console.WriteLine(custObj.CustomerID);
}
Dim db As New Northwnd("c:\northwnd.mdf")
Dim dlo As DataLoadOptions = New DataLoadOptions()
dlo.LoadWith(Of Customer)(Function(c As Customer) c.Orders)
db.LoadOptions = dlo
Dim londonCustomers = _
From cust In db.Customers _
Where cust.City = "London" _
Select cust
For Each custObj In londonCustomers
Console.WriteLine(custObj.CustomerID)
Next
Hinweise
Sie können das Laden von zwei Beziehungensebenen (z. B Orders.OrderDetails. ) nicht angeben. In diesen Szenarien müssen Sie zwei separate LoadWith Methoden angeben.
Informationen zum Vermeiden des Radfahrens finden Sie im Abschnitt "Hinweise" in DataLoadOptions.