DataLoadOptions.AssociateWith Method (LambdaExpression)
.NET Framework (current version)
Filters the objects retrieved for a particular relationship.
Assembly: System.Data.Linq (in System.Data.Linq.dll)
Parameters
- expression
-
Type:
System.Linq.Expressions.LambdaExpression
Identifies the query to be used on a particular one-to-many field or property. Note the following:
If the expression does not start with a field or property that represents a one-to-many relationship, an exception is thrown.
If an operator other than a valid operator appears in the expression, an exception is thrown. Valid operators are as follows:
Where
OrderBy
ThenBy
OrderByDescending
ThenByDescending
Take
In the following example, the inner loop iterates only over those Orders that have not been shipped today.
Northwnd db = new Northwnd(@"c:\northwnd.mdf"); DataLoadOptions dlo = new DataLoadOptions(); dlo.AssociateWith<Customer>(c => c.Orders.Where(p => p.ShippedDate != DateTime.Today)); db.LoadOptions = dlo; var custOrderQuery = from cust in db.Customers where cust.City == "London" select cust; foreach (Customer custObj in custOrderQuery) { Console.WriteLine(custObj.CustomerID); foreach (Order ord in custObj.Orders) { Console.WriteLine("\t {0}",ord.OrderDate); } }
.NET Framework
Available since 3.5
Windows Phone Silverlight
Available since 7.1
Available since 3.5
Windows Phone Silverlight
Available since 7.1
Show: