Chapter 8 LINQ

What’s in This Chapter

  • LINQ query syntax
  • Grouping and aggregating results
  • Creating new LINQ extension methods
  • Method-based queries
  • LINQ to Objects, LINQ to XML, and LINQ to ADO.NET
  • Parallel LINQ

Wrox.com Downloads for This Chapter

Please note that all the code examples for this chapter are available as a part of this chapter’s code download on the book’s website at www.wrox.com/go/csharp5programmersref on the Download Code tab.

Language Integrated Query or LINQ (pronounced “link”) is a data retrieval mechanism that enables programs to filter, select, and group data in much the same way a program can gather data from a database. The difference is that LINQ enables the program to select data from all kinds of data sources, not just databases. LINQ enables a program to select data from arrays, lists, collections, XML data, relational databases, and a wide variety of other data sources.

LINQ enables a program to use a (sort of) natural query language to make complex data selections with little code. For example, suppose you want to search a collection of customer records, find those with balances greater than $50 that are overdue by at least 30 days, and display the list sorted by balance. You could easily write code to loop through the collection to find the appropriate customers and copy them into a new collection. You could then write code to sort that collection. This isn’t terribly hard, but it does take a moderate amount of code that would give you several ...

Get C# 5.0 Programmer's Reference now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.