Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 9th, 2012  |  syntax: None  |  size: 1.23 KB  |  hits: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Multiple WHERE Clauses with LINQ extension methods
  2. DateTime today = DateTime.UtcNow;
  3. var results = from order in context.Orders
  4.               where ((order.OrderDate <= today) && (today <= order.OrderDate))
  5.               select order;
  6.        
  7. if (useAdditionalClauses)
  8. {
  9.   results = results.Where(o => o.OrderStatus == OrderStatus.Open)  // Now I'm stuck.
  10. }
  11.        
  12. results = results.Where(o => (o.OrderStatus == OrderStatus.Open) &&
  13.                              (o.CustomerID == customerID));
  14.        
  15. results = results.Where(o => (o.OrderStatus == OrderStatus.Open))
  16.                  .Where(o => (o.CustomerID == customerID));
  17.        
  18. results = results.Where (o => o.OrderStatus == OrderStatus.Open);
  19. results = results.Where (o => o.InvoicePaid);
  20.        
  21. if (useAdditionalClauses)
  22. {
  23.   results = results.Where(o => o.OrderStatus == OrderStatus.Open && o.CustomerID == customerID)  // Now I'm stuck.
  24. }
  25.        
  26. if (useAdditionalClauses)
  27. {
  28.   results =
  29.     results.Where(o => o.OrderStatus == OrderStatus.Open &&
  30.     o.CustomerID == customerID)  
  31. }
  32.        
  33. if (useAdditionalClauses)
  34. {
  35.   results = results.Where(o => o.OrderStatus == OrderStatus.Open).
  36.     Where(o => o.CustomerID == customerID);
  37. }
  38.        
  39. results = context.Orders.Where(o => o.OrderDate <= today && today <= o.OrderDate)