DataLoadOptions.LoadWith Methode

Definitie

Overloads

Name Description
LoadWith(LambdaExpression)

Hiermee worden opgegeven gegevens opgehaald die betrekking hebben op het hoofddoel met behulp van een lambda-expressie.

LoadWith<T>(Expression<Func<T,Object>>)

Hiermee geeft u op welke subobjecten moeten worden opgehaald wanneer een query wordt verzonden voor een object van het type T.

LoadWith(LambdaExpression)

Hiermee worden opgegeven gegevens opgehaald die betrekking hebben op het hoofddoel met behulp van een lambda-expressie.

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)

Parameters

expression
LambdaExpression

Een lambda-expressie die het gerelateerde materiaal identificeert.

Voorbeelden

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

Opmerkingen

In het volgende voorbeeld worden alle Orders items die Customers zich in Londen bevinden, opgehaald wanneer de query wordt uitgevoerd. Als gevolg hiervan activeert opeenvolgende toegang tot de Orders eigenschap op een Customer object geen nieuwe databasequery.

Van toepassing op

LoadWith<T>(Expression<Func<T,Object>>)

Hiermee geeft u op welke subobjecten moeten worden opgehaald wanneer een query wordt verzonden voor een object van het type T.

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

Type parameters

T

Type waarop een query wordt uitgevoerd.

Als dit type niet is toegewezen, wordt er een uitzondering gegenereerd.

Parameters

expression
Expression<Func<T,Object>>

Identificeert het veld of de eigenschap die moet worden opgehaald.

Als de expressie geen veld of eigenschap identificeert die een een-op-een- of een-op-veel-relatie vertegenwoordigt, wordt er een uitzondering gegenereerd.

Voorbeelden

In het volgende voorbeeld worden alle Orders items die Customers zich in Londen bevinden, opgehaald wanneer de query wordt uitgevoerd. Als gevolg hiervan activeert opeenvolgende toegang tot de Orders eigenschap op een Customer object geen nieuwe databasequery.

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

Opmerkingen

U kunt het laden van twee niveaus van relaties (bijvoorbeeld Orders.OrderDetails) niet opgeven. In deze scenario's moet u twee afzonderlijke LoadWith methoden opgeven.

Zie de sectie Opmerkingen in DataLoadOptions.

Van toepassing op