Chapter 11

Language Integrated Query


  • Traditional queries across objects using List
  • Extension methods
  • LINQ query operators
  • Parallel LINQ
  • Expression trees


The code downloads for this chapter are found at on the Download Code tab. The code for this chapter is divided into the following major examples:

  • LINQ Intro
  • Enumerable Sample
  • Parallel LINQ
  • Expression Trees


LINQ (Language Integrated Query) integrates query syntax inside the C# programming language, making it possible to access different data sources with the same syntax. LINQ accomplishes this by offering an abstraction layer.

This chapter describes the core principles of LINQ and the language extensions for C# that make the C# LINQ Query possible.

NOTE For details about using LINQ across the database, you should read Chapter 33, “ADO.NET Entity Framework.” For information about querying XML data, read Chapter 34, “Manipulating XML,” after reading this chapter.

This chapter starts with a simple LINQ query before diving into the full potential of LINQ. The C# language offers integrated query language that is converted to method calls. This section shows you what the conversion looks like so you can use all the possibilities of LINQ.

Lists and Entities

The LINQ queries in this chapter are performed on a collection containing Formula-1 champions from 1950 to 2011. This data needs to be prepared ...

Get Professional C# 2012 and .NET 4.5 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.