Our recent poll showed that "LINQ In Action", by Fabrice Marguerie et al was the clear winner for "best book about C# 3.0 / LINQ" from our readers. Now that I've read through the book one time, I can confidently state why I believe this is true:
LINQ depends on certain language enhancements in order to work. Consequently, any good book about LINQ cannot simply assume that we know all these enhancements and how they work - it has to cover them first, and that's what "LINQ In Action" does. You get about 40 pages of detailed instruction on:
- Implicitly typed local variables
- Object Initializers
- Lambda Expressions
- Extension Methods
- Anonymous Types
The rest of this excellent book covers all facets of LINQ, including sequences, query operators, interfaces, LINQ to Objects, LINQ to SQL, LINQ with Windows Forms, LINQ with ASP.NET, common scenarios and tips, and performance considerations.
In the LINQ to SQL area, it covers querying relational data, the DataContext class, filtering, sorting, grouping, joins, aggregation, working with object trees, immediate vs. deferred execution, updating and inserting data, mapping objects to relational data, the various attributes used, mapping with external XML files, using SqlMetal and the LINQ to SQL Designer, translating query expressions to SQL, expression trees, concurrency and much more.
There is a complete chapter treating LINQ to XML in detail, and another chapter dealing with querying and transforming XML via LINQ, including usage of all the standard query operators. There are additional chapters on this and even one on how to extend LINQ with custom LINQ extensions and query operators.
In all, 542 pages of well - written instruction and background that, in my opinion, definitely puts Manning on the map alongside the likes of O'Reilly and Addison-Wesley with this book. There is plenty of good downloadable source code to go with the book, as well as an excellent bonus chapter you can download.
Frankly, if you decide that you need to make an investment in learning what LINQ is, how to use it, and why it can help you, and you can only buy one book, then this is the one you should buy. Sticker price, $44.99 - recommended.