Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5
LoadWith Method
Members FilterMembers Filter
Frameworks FilterFrameworks Filter
.NET Framework Class Library
DataLoadOptions..::.LoadWith Method

Retrieves specified data related to the main target.

  NameDescription
LoadWith<(Of <(T>)>)(Expression<(Of <(Func<(Of <(T, Object>)>)>)>))Specifies which sub-objects to retrieve when a query is submitted for an object of type T.
LoadWith(LambdaExpression)Retrieves specified data related to the main target by using a lambda expression.
Top

Use the LoadWith method to specify which data related to your main target should be retrieved at the same time. For example, if you know you will need information about customers' orders, you can use LoadWith to make sure the order information is retrieved at the same time as the customer information. This approach results in only one trip to the database for both sets of information.

In the following example, all the Orders for all the Customers who are located in London are retrieved when the query is executed. As a result, successive access to the Orders property on a Customer object does not trigger a new database query.

Visual Basic
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

C#
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);
}

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content      
DataLoadOptions and ExecuteQuery      DeborahK   |   Edit   |  
NOTE: The DataLoadOptions only work when the LINQ to SQL generates the SQL. It will not work in conjunction with ExecuteQuery().
Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2008 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker