Advanced Search
Start Your Free Trial

Overview

Top Sellers in this Category

Windows 7 Inside Out

Windows 7 Inside Out
by Ed Bott; Carl Siechert; Craig Stinson

Excel® 2007 Bible

Excel® 2007 Bible
by John Walkenbach

“For several years, Troy has been one of the key figures in the LINQ community. This comprehensive and well-written book serves as a compendium of the important wisdom and experience that he has accumulated through his years of studying LINQ and its uses.”

      –Charlie Calvert, Microsoft C# Community Program Manager

“LINQ is changing the way we think about working with data and, in many ways, also about programming in general. LINQ to Objects Using C# 4.0 is a thorough reference that teaches how to simplify many day-to-day tasks with data. It also gives you the foundations that are necessary to understand a wide range of fascinating applications of LINQ that will, no doubt, continue to appear over the next few years.”

      –Tomas Petricek, Microsoft MVP and author of Real-World Functional Programming

Your Complete Example-Rich Guide to Using and Extending LINQ to Objects and PLINQ

Using LINQ to Objects, .NET developers can write queries over object collections with the same deep functionality that was once available only with SQL and relational databases. Now, for the first time, developers have a comprehensive and authoritative guide to applying LINQ to Objects in real-world software. Microsoft MVP Troy Magennis introduces state-of-the-art techniques for working with in-memory collections more elegantly and efficiently—and writing code that is exceptionally powerful, robust, and flexible.

Drawing on his unsurpassed experience coding software using LINQ and hosting the popular HookedOnLINQ.com site, Magennis presents timely, realistic solutions to a wide spectrum of development challenges, such as combining data from multiple sources, and achieving optimal performance with extremely large sets of data. You’ll begin with brief quick-starts that walk you through LINQ to Objects’ key features and query syntax. Next, you’ll drill down to detailed techniques for applying and extending these features with C# 4.0 and C# 3.0—including code examples that reflect the realities of production development.

Coverage includes

•    Writing basic LINQ queries with C#: filtering, projecting, and sorting data from in-memory collections

•    Mastering advanced techniques for grouping and joining data and understanding the performance implications of each technique

•    Taking full advantage of LINQ’s standard query operators

•    Creating custom query operators that follow best practices for coding patterns and error handling

•    Writing more fluent, readable LINQ queries with C# 4.0’s language enhancements, including the new dynamic features

•    Combining LINQ with COM-Interop to access data sources such as Microsoft Excel

•    Using Parallel LINQ to Objects (PLINQ) to optimize queries for multi-core processors, and how to build custom parallel query operators

•    Integrating the best LINQ to Objects patterns into your day-to-day coding

Amazon.com® Reader Reviews (Ranked by Helpfulness)

Average Amazon.com® Rating: 5.0 out of 5 rating Based on 4 Ratings

Awsome Resource for .Net Deveopers - 2010-03-18
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
I found this book to be most useful of all the Linq books I have come across. It provides great practical examples of how to use Linq effectively on data objects and save hundreds of lines of code. At the same time, the author explains the performance implications so that you can make the right decision for your application. This book was a great find for me as I had a hard time last year when I tried to use Linq in some complex manipulation of objects involving joins.
The only disappointment for me was the fact that when I first I read the book online on Safari Books, the examples were in color and syntax highlighted. I decided to purchase the printed book to have it as a reference. The print edition is not in color and seems a step backwards.
I highly recommend this book to any developer that uses Linq. Not just for objects. It is well thought out and brilliantly written with real life examples.

Explains basic and advanced concepts succinctly and really well, provides very useful performance tips - 2010-05-22
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
LINQ stands for Language INtegrated Query, a technology available to Microsoft DotNet developers since version 3 of the DotNet Framework. LINQ makes working with data such as collections of in-memory objects, rows from database tables, or elements in XML files simpler, providing a set of abstractions that enable developers to manipulate or reshape the source data into something else using more succinct and readable code than the usual deeply-nesting for loops.

This easy to read and very well thought out and written book will not only teach you how to write readable sequential and parallel LINQ queries against collections of in-memory objects, but it also shows you how to create your own custom sequential or parallel operators using the CSharp language. The book also provides illustrations of useful coding patterns, performance tips, and practical advice on what to consider when thinking about parallelizing code.

The book consists of nine chapters. Chapters 1 and 2 are introductory chapters that describe what LINQ is, its benefits, and the CSharp 3.0 language enhancements such as extension methods, object and collection initializers, implicitly typed local variables, lambda expressions and anonymous types that made LINQ possible.

Chapters 3 through 6 discuss various LINQ operators you can use when writing queries to select, partition, order, group, or join data, as well as to perform data aggregations such as computing sums and averages. Version 4 of the DotNet Framework provides 52 LINQ operators, and the book covers all of them. The chapter on Grouping and Joining Data is a particularly good one, discussing best practices and pitfalls to avoid when grouping and joining data sources not often discussed in other LINQ books.

Chapter 7 teaches you how to create custom LINQ to Objects operators, providing one code example each for the following operator categories:

* Single element operator: those that return a single element from a sequence (e.g., First, Last, ElementAt)

* Sequence operator: those that return a sequence of elements (e.g., Where, Select)

* Aggregate operator: those that return an aggregate return value (e.g., Sum, Average)

* Grouping operator: those that return groupings of elements from a sequence (e.g., GroupBy, GroupJoin)

Chapter 8 discusses then demonstrates the best way to use new CSharp 4.0 language features such as optional parameters, named arguments and dynamic types within the context of writing enhanced LINQ queries.

Chapter 9 covers Parallel LINQ, explaining the difference between multithreading and code parallelism, and what happens during a Parallel LINQ query. The latter discussion will help readers understand when and why a Parallel LINQ query may not always execute more quickly than its sequential version, and what parts of the execution process developers have and do not have control over. The chapter ends with a code example of how to "parallelize" a sequential LINQ operator.

I found the book to be very informative. It explains basic and more advanced concepts succinctly and really well, and addresses some of my performance concerns with using LINQ (for example, I didn't realize until reading this book that many LINQ operators will take advantage of optimizations built into certain collection types). So overall, I'm very happy with this book!

Exceptional Book In Content and Style - 2010-06-08
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
All of LINQ is covered from .NET 3.0 - .NET 4.0. It is written by someone who clearly is a master of LINQ and knows how to communicated his mastery. Detailed explanations and examples are provided for all LINQ operators, helping the developer to know when and where to use each. I have purchased a few LINQ books. To me, this was the clearest and most consise. This book is the new classic book for LINQ.

Fantastic coverage of a complex topic - 2010-06-26
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
I have to say that the book has some really good explanations of how things work. It is not for the complete novice, a lot of LINQ basics are skipped over in favor of more depth. If you have a basic idea about what LINQ is, and you know what a LINQ expression looks like you could probably work your way through it pretty well.

The book is about using LINQ, and PLINQ to change how you query objects and collections in RAM. This is not a database book. You can use any of the methods in this book to work with just about any collection in .Net. Some of the same concepts work with databases like Entity Framework and LINQ to EF, but that is not the core of this book.

A few of the chapters that really stand out to me:

Chapter 7 covers extending LINQ to Objects and has a lot of fantstic nuggets in here. I didn't know you could write your own grouping operator in LINQ until I read this chapter.

Chapter 9 Parallel LINQ to Objects - Nice concise explanations of parallel problems and how to solve them using PLINQ. There is definitely room to expand this section with more advanced topics, but the coverage here is more than enough to get you running and thirst for the in depth discussions on MSDN.

I recommend the book for anyone trying to get their head around LINQ to Objects, and possibly just more advanced LINQ concepts in general.

Of course I recommend you go grab a copy of LINQPAD ([..] ) to write queries in and execute without needing a solution in Visual Studio. I found Linqpad to be amazing for productivity of testing LINQ queries.

Browse Similar Topics

Top Level Categories:
Programming

Sub-Categories:
Programming > C#
Programming > .NET

Some information on this page was provided using data from Amazon.com®. View at Amazon >


About Safari Books Online • Terms of Service • Privacy Policy • Contact Us • Corporate Licenses • Help • Accessibility | See us on FacebookSee us on Linked InSee us on TwitterRSS

Copyright 2010 Safari Books Online. All rights reserved.