LINQ: Language Integrated Query

  • Trey Nash


C-style languages (including C#) are imperative in nature, meaning that the emphasis is placed on the state of the system, and changes are made to that state over time. Data-acquisition languages such as SQL are functional in nature, meaning that the emphasis is placed on the operation and there is little or no mutable data used during the process. LINQ bridges the gap between the imperative programming style and the functional programming style. LINQ is a huge topic that deserves entire books devoted to it and what you can do with LINQ.1 There are several implementations of LINQ readily available: LINQ to Objects, LINQ to SQL, LINQ to Dataset, LINQ to Entities, and LINQ to XML. I will be focusing on LINQ to Objects because I’ll be able to get the LINQ message across without having to incorporate extra layers and technologies.


Functional Programming Extension Method Query Keyword Expression Tree Static Void 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    For more extensive coverage of LINQ, I suggest you check out Foundations of LINQ in C#, by Joseph C. Rattz, Jr. (Apress, 2007).Google Scholar
  2. 4.
    I first encountered Koenig’s so called fundamental theorem of software engineering in his excellent book coauthored with Barbara Moo titled Ruminations on C++ (Boston: Addison-Wesley Professional, 1996).Google Scholar

Copyright information

© Trey Nash 2010

Authors and Affiliations

  • Trey Nash

There are no affiliations available

Personalised recommendations