23rd, October I did a session about LINQ for the .NET User Group Madriddotnet.
During the event we tried to know more in deep how LINQ works, from C-Omega to LINQ to SQL, doing an attempt to solve many of the questions that normally arise when you want to obtain the most of LINQ.
We found Visual Studio 2008 comes with a nice bunch of samples to helps us including visualizers like the Expression Tree Visualizer, which allows you to see the expression tree created from our queries and the LINQ Query Visualizer to see the translation done to Transact/SQL. We knew that it is possible to create queries on the fly using the Dynamic Query Library
We also talked about the benefits of the expression trees and the visitor pattern. You have some sample implementations like the one done by Matt Warren
In the last part of the event we focused on tips for LINQ to SQL to move to a multi-tier architecture. We explained how easy is to serialize LINQ entities to be used over WCF on both directions, this is from Master to Detail and from Detail to Master. How to workaround the fact that circular references are not supported by default by the DataContractSerializer. We gave some ideas about how to do local change tracking of entities when we are disconnected from the DataContext, providing some examples of complete implementations like the one done at MSDN Video (Spanish).
As you can see we talked about many different things and we verified how LINQ can help us during our day to day work making our life much easier if we apply some good practices.
If you attended to the event I hope you enjoyed as much as I did.