Today I found the time to get my hands dirty on C# 3.0 and LINQ. At PDC05 I went to a couple of sessions on these topics and I read the excellent whitepaper on the LINQ project by Hejlsberg and Box. But I was too busy attending other sessions to try out the hands-on-labs. The hands-on-labs are available for download as Word documents containing instructions.
During download and installation of the C# LINQ Tech Preview I read a most excellent blog post by Ian Griffiths on Expression Trees. If you are interested in C# 3.0 go read it, if you haven't already done so! It talks about the parts of C# 3.0 that impressed me the most.
After the installation of the C# LINQ Tech Preview I hit a little snag. The new project templates for LINQ didn't show up in Visual Studio. An investigation with File Monitor showed that the templates were installed in a subfolder of My DocumentsVisual Studio 2005TemplatesProjectTemplates. It turned out the user setting for the user project templates location in Visual Studio pointed to the wrong location. It pointed to a subfolder of My DocumentsVisual StudioTemplatesProjectTemplates (so without the 2005 in the name). I have installed a lot of CTP and beta builds of Whidbey in the past and this folder probably changed sometime ago. I didn't notice this problem before, because WinFX installs its project templates elsewhere.
So now I am all set to start experimenting. I also want to check out VB 9.0, because of its support for dynamic typing and XML. I am impressed by anonymous classes and extension methods in C# 3.0. They alleviate some of the need for dynamic typing. But is it enough?