Inside C# 3.0: Extension Methods, Query Expressions, and Expression Trees
Move beyond the techno-speak, and learn how you can leverage new features in C# 3.0.
Listen to the audio and watch the slides! (Running time: 1 hour, 3 minutes)
LINQ, DLinq, and XLinq—what the heck? The last thing you're looking for is more three-letter acronyms (TLAs) and fancy, four-letter acronyms (FFLAs). But once you do bit of plumbing, C# anonymous methods are incredibly useful. C# 3.0 provides an elegant, expressive syntax for generating anonymous methods called lambda expressions, and its extension methods feature lets you define a static method in one class and use it as an instance method in another class, without deriving or modifying the latter. Combine these two features, and you can create query expressions that perform SQL- and XQuery-type searches on collections.
You can also store these queries—not just the results—in expression tree data structures for reuse. With new features such as simplified variable initialization syntax, elegant object initialization, and the ability to define anonymous types on the fly, C# 3.0 promises to transform your day-to-day C# development into elegant, high-level expressions.