I will be speaking this Friday and Saturday, August 22nd and 23rd, at devLink near Nashville, TN. I will give two talks, both on LINQ, both for intermediate and advanced developers. The first covers querying in LINQ, and the second talk explains the features of C# 3.0 that make LINQ possible.
Essence of LINQ Part I
Query expressions are the primary tool for writing LINQ queries. This talk will explore the syntax for writing query expressions. It will also explore a number of the most important LINQ operators. The 7 different types of LINQ clauses will be covered, as well as the 4 different ways to introduce range variables, the different means of creating a LINQ join, and the role of composition in LINQ. Some of the operators that will get special attention include Join, SelectMany, GroupBy, OrderBy and the Aggregate and Set operators. This talk digs into some intermediate and advanced issues, and I assume that most attendees know at least a little about LINQ.
Essence of LINQ Part II
To enable LINQ, C# 3.0 introduces a number of new language features such as query expressions, lambda expressions, extension methods, automatically implemented properties, local type inference, expression trees and more. These are all features that can improve the quality of your code. They also provide new opportunities for making mistakes This talk will explore these features and outline best practices for using them.. Each feature will be introduced with an example illustrating how it contributes to the overall LINQ architecture.