Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
In This Chapter |
In the previous chapter, we learned how LINQ unifies the programming experience for querying various domains of data. We learned about the query expression syntax added to C# to formulate rich queries using filters, projections, joins, and so on. But how does LINQ work under the hood? This question is answered in this chapter. First, we look at LINQ to Objects, which uses C# 2.0 iterators to do its job. Next, we cover the set of Standard Query Operators present in the BCL. Finally, exploration of LINQ internals brings us to expression trees and the concept of IQueryable<T> query providers.