<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C# 3.0</title><link>http://davidhayden.com/blog/dave/category/58.aspx</link><description>C# 3.0</description><managingEditor>Dave Hayden</managingEditor><dc:language>en-US</dc:language><generator>.Text Version 0.95.2004.101</generator><item><dc:creator>Dave Hayden</dc:creator><title>Visual Studio 2008 and .NET Framework 3.5 Training Kit - Labs Tutorials Powerpoint Presentation Demos</title><link>http://davidhayden.com/blog/dave/archive/2008/03/31/VisualStudio2008NETFramework35TrainingKitLabsTutorialsPowerpointPresentationDemos.aspx</link><pubDate>Mon, 31 Mar 2008 20:08:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2008/03/31/VisualStudio2008NETFramework35TrainingKitLabsTutorialsPowerpointPresentationDemos.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;Visual Studio 2008 and .NET Framework 3.5 Training Kit - Labs Tutorials Powerpoint Presentation Demos&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Sarasota Web Design&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;If you are looking for hands-on-labs, tutorials, examples, Powerpoint Presentation Slides, and demos on the new features of Visual Studio 2008 and the .NET 3.5 Framework, the &lt;STRONG&gt;Visual Studio 2008 and .NET Framework 3.5 Training Kit&lt;/STRONG&gt; may be what you are looking for. From the site:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&amp;#8220;The Visual Studio 2008 and .NET Framework 3.5 Training Kit includes presentations, hands-on labs, and demos. This content is designed to help you learn how to utilize the Visual Studio 2008 features and a variety of framework technologies including: LINQ, C# 3.0, Visual Basic 9, WCF, WF, WPF, ASP.NET AJAX, VSTO, CardSpace, SilverLight, Mobile and Application Lifecycle Management.&amp;#8220;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;You can download it &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=8BDAA836-0BBA-4393-94DB-6C3C4A0C98A1&amp;amp;displaylang=en" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Visual Studio 2008 and .NET Framework 3.5 Tutorials&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/category/59.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;LINQ To SQL Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2008/01/29/VisualStudio2008ResolvingNamespacesRemovingUnusedUsingStatementsTip.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Visual Studio 2008 Tip: Resolving Namespaces and Removing Unused Using Statements&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3505.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Patterns &amp; Practices Talk in Sarasota Florida on Thursday, December 6, 2007</title><link>http://davidhayden.com/blog/dave/archive/2007/11/20/PatternsPracticesTalkSarasotaFloridaDecember62007.aspx</link><pubDate>Tue, 20 Nov 2007 09:45:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/11/20/PatternsPracticesTalkSarasotaFloridaDecember62007.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;Patterns &amp;amp; Practices Talk in Sarasota Florida on Thursday, December 6, 2007&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Microsoft MVP C#&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;If you are interested in the Web Client Software Factory and Web Service Software Factory: Modeling Edition, come out to the Sarasota .NET Developer Group on Thursday, December 6th to see&amp;nbsp;these cool new offerings from Microsoft Patterns &amp;amp; Practices. I will be discussing the &lt;A href="http://www.pnpguidance.net/Category/WebClientSoftwareFactory.aspx"&gt;Web Client Software Factory v2.0&lt;/A&gt;&amp;nbsp;and fellow MVP Stan Schultes will be showing off the &lt;A href="http://www.pnpguidance.net/Category/WebServiceSoftwareFactory.aspx"&gt;Web Service Software Factory&lt;/A&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;In the WCSF presentation I will be showing off the following 3 guidance bundles that will help you easily develop responsive Web&amp;nbsp;UI's using ASP.NET AJAX:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://www.pnpguidance.net/Tag/AutocompleteGuidanceBundle.aspx"&gt;AutoComplete Bundle&lt;/A&gt; ( AutoComplete Functionality with a Twist )&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://www.pnpguidance.net/Tag/ValidationGuidanceBundle.aspx"&gt;Validation Bundle&lt;/A&gt; ( Server-Side Validation using ASP.NET AJAX )&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://www.pnpguidance.net/Tag/SearchBundle.aspx"&gt;Search Bundle&lt;/A&gt; ( Real-Time Search Functionality via ASP.NET AJAX )&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Given the recent release of Visual Studio 2008, I will also be showing off various C# and .NET 3.5 Features in the process:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/category/59.aspx?Show=All"&gt;LINQ To SQL&lt;/A&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2007/08/05/CSharpAutomaticPropertiesVisualStudio2008Development.aspx"&gt;Automatic Properties&lt;/A&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/AnonymousTypesCSharp.aspx"&gt;Anonymous Types&lt;/A&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2007/07/19/PartialMethodsCodeGeneration.aspx"&gt;Partial Methods&lt;/A&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/04/ObjectInitializationExpressions.aspx"&gt;Object Initializers&lt;/A&gt;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;etc...&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The event&amp;nbsp;details:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;Date:&lt;/STRONG&gt; Thursday, December 6, 2007&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;Time:&lt;/STRONG&gt;&amp;nbsp;6:00pm&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;Location:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Sarasota Community Foundation&lt;BR&gt;2635 Fruitville Rd.&lt;BR&gt;Sarasota, FL 34237&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Look forward to seeing you there.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3391.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Pluggable Frameworks and Libraries - Discovering Classes Using Reflection and Attributes</title><link>http://davidhayden.com/blog/dave/archive/2007/10/04/PluggableFrameworksLibrariesDiscoveringClassesReflectionAttributes.aspx</link><pubDate>Thu, 04 Oct 2007 22:20:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/10/04/PluggableFrameworksLibrariesDiscoveringClassesReflectionAttributes.aspx</guid><description>There are many ways to make frameworks and libraries more extensible via pluggable providers. Here is code that shows how to using reflection and custom attributes to find types in an assembly to evaluate expressions in a custom configuration section. This draws upon the concept of ExpressionEvaluators and ExpressionBuilders. Read more...&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3355.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Dependency Injection Parameters and Properties Like Castle Windsor</title><link>http://davidhayden.com/blog/dave/archive/2007/10/04/DependencyInjectionParametersPropertiesCastleWindsor.aspx</link><pubDate>Thu, 04 Oct 2007 20:26:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/10/04/DependencyInjectionParametersPropertiesCastleWindsor.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;Dependency Injection Parameters and Properties Like Castle Windsor&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;A href="http://www.davidhayden.com/"&gt;David Hayden&lt;/A&gt; ( &lt;A href="http://www.davidhayden.com/"&gt;Florida .NET Developer&lt;/A&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Castle Windsor has concepts of parameters and properties to help inject dependencies like strings and integers into your classes. For example, you may have a database service that requires a connection string to the database:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;class&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; SqlDatabase : IDatabase
{
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; SqlDatabase(&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;string&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; connectionString)
    {
        ...
    }
}&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The connection string&amp;nbsp;isn't something that you would find in the container, so you need to add a parameter into the configuration to specify the value:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;component service&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;IDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; type&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;SqlDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;MyConnectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;component&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;If you find that many components may use the connection string as a parameter, you can add a property to the configuration and use the property in the parameter:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;properties&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connection&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;MyConnectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connection&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;properties&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;


&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;component service&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;IDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; type&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;SqlDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;#{connection}&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;component&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;where &lt;STRONG&gt;#{connection}&lt;/STRONG&gt; refers to the value of the connection property above. This way if the connection string changes you ownly need to change the property and not all the parameters.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This is all very, very cool and a necessary feature of any decent dependency injection tool.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I added this functionality today to my dependency injection tool.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;In addition to the functionality above, I also added the concept of &lt;STRONG&gt;ExpressionEvaluators&lt;/STRONG&gt; which I based on &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2007/09/28/CreateCustomExpressionBuildersASPNETMoreASPNETExtensibility.aspx"&gt;&lt;FONT face=Verdana size=2&gt;ExpressionBuilders in ASP.NET 2.0&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;. I can specify a parameter value pulled from ConnectionStrings, like:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add interfaceType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;IDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; concreteType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;SqlDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
      &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add
        key&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
        value&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;${ConnectionString:MyConnectionString}&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The &lt;STRONG&gt;ConnectionStringExpressionEvaluator&lt;/STRONG&gt; will look for the named connection string &lt;STRONG&gt;MyConnectionString&lt;/STRONG&gt; in the app.config or web.config and use it as the parameter value for &lt;STRONG&gt;connectionString&lt;/STRONG&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;If you instead want to get a value from AppSettings, the &lt;STRONG&gt;AppSettingExpressionEvaluator&lt;/STRONG&gt; will take care of that one:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add interfaceType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;IDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; concreteType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;SqlDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
        &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add
            key&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
            value&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;${AppSetting:MyConnectionString}&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;There is also the concept of &lt;STRONG&gt;globals&lt;/STRONG&gt; which are the same as &lt;STRONG&gt;properties&lt;/STRONG&gt; in Windsor. You can use expressions in the globals as well:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;globals&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
  &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add
    key&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;MyConnectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    value&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;${ConnectionString:MainConnectionString}&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;globals&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;



&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add interfaceType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;IDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; concreteType&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;SqlDatabase&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
        &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add
            key&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;connectionString&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
            value&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #008080"&gt;#{MyConnectionString}&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;parameters&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;
&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;add&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This last addition makes my dependency injection tool feature complete for 1.0.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face=Verdana&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana&gt;Florida .NET Developer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt; )&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3354.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Software Development Tip: Avoid Race Conditions Using Tester-Doer Pattern</title><link>http://davidhayden.com/blog/dave/archive/2007/09/26/SoftwareDevelopmentTipAvoidRaceConditionsUsingTesterDoerPattern.aspx</link><pubDate>Wed, 26 Sep 2007 21:49:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/09/26/SoftwareDevelopmentTipAvoidRaceConditionsUsingTesterDoerPattern.aspx</guid><description>One of the patterns that came up today in a code review was the Tester-Doer Pattern. One sees this pattern a lot especially when the “doer” side of the equation has a pretty decent performance penalty. Essentially, you test a condition to make sure you need to do the “doer“ operation and pay that penalty. Sometimes this can cause race conditions. Read more...&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3346.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>C# Automatic Properties in Use during Visual Studio 2008 Development</title><link>http://davidhayden.com/blog/dave/archive/2007/08/05/CSharpAutomaticPropertiesVisualStudio2008Development.aspx</link><pubDate>Sun, 05 Aug 2007 11:28:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/08/05/CSharpAutomaticPropertiesVisualStudio2008Development.aspx</guid><description>C# Automatic Properties is just one of a number of new C# 3.0 Features that you can experience during Visual Studio 2008 development. It feels different using the new C# features in an actual web application as opposed to just writing C# tutorials about them. Read more...&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3295.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>C# and VB Partial Methods in Orcas Beta 2 for Code Generation - Business Object Validation Example</title><link>http://davidhayden.com/blog/dave/archive/2007/07/19/PartialMethodsCodeGeneration.aspx</link><pubDate>Thu, 19 Jul 2007 13:39:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/07/19/PartialMethodsCodeGeneration.aspx</guid><description>In Orcas Beta 2 we will see partial methods, which provides a hook for developers to “inject” code into partial classes without running the risk of that code being overwritten when the class is being generated in the future. Read more...&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3280.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Visual Studio "Orcas" March 2007 CTP Download - LINQ ADO.NET C# 3.0 Entity Data Model</title><link>http://davidhayden.com/blog/dave/archive/2007/02/28/VisualStudioOrcasMarch2007CTP.aspx</link><pubDate>Wed, 28 Feb 2007 09:13:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/02/28/VisualStudioOrcasMarch2007CTP.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;Visual Studio "Orcas" March 2007 CTP Download - LINQ ADO.NET C# 3.0&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Microsoft MVP C#&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ), Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The Visual Studio &amp;#8220;Orcas&amp;#8221; March 2007 CTP is available for &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=b533619a-0008-4dd6-9ed1-47d482683c78&amp;amp;displaylang=en&amp;amp;tm" target=_blank&gt;download&lt;/A&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This is the first one I will be downloading because it represents a big milestone for the LINQ and ADO.NET Features. I will be doing&amp;nbsp;a lot of tutorials on LINQ and ADO.NET over the next few weeks.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Visual Studio Highlights:&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;C# 3.0 Language&lt;/A&gt; Support: This CTP implements all of the C#3.0 language features from the May LINQ CTP including:&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/13/QueryExpressionTranslationAndLINQ.aspx"&gt;Query Expressions&lt;/A&gt;&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/04/ObjectInitializationExpressions.aspx"&gt;Object and Collection Initializers&lt;/A&gt;&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/ExtensionMethodsCSharp.aspx"&gt;Extension Methods&lt;/A&gt;&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/ImplicitlyTypedLocalVariables.aspx"&gt;Local Variable Type Inference&lt;/A&gt; and &lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/AnonymousTypesCSharp.aspx"&gt;Anonymous Types&lt;/A&gt;&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/LambdaExpressionsExtensionMethodsLINQ.aspx"&gt;Lambda Expressions&lt;/A&gt;&amp;nbsp;bound to Delegates and &lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/21/BuildExpressionTreesTutorialAndExamples.aspx"&gt;Expression trees&lt;/A&gt;&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Complete design-time support: Intellisense, Formatting, Colorization&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;LINQ to ADO.NET&lt;/STRONG&gt;&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;ADO.NET is fully integrated with LINQ and offers many options for using LINQ in various scenarios: LINQ to SQL provides direct access to database tables from the programming environment, LINQ to Entities enables developers to use LINQ over EDM models, and &lt;STRONG&gt;LINQ to DataSet&lt;/STRONG&gt; allows the full expressivity of LINQ to be used over DataSets.&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;LINQ to Entities&lt;/STRONG&gt; enables developers to program against a relational database using a view of the data that is appropriate for the application they are building, independent of the structure of the underlying database. The use of the Entity Data Model (EDM) enables developers to design models that follow the concepts built into the application, instead of having to map them to constructs available in relational stores. LINQ to Entities is built on the ADO.NET Provider model and will support working against different back end relational stores in addition to Microsoft SQL Server. This CTP includes a LINQ to Entities provider for SQL Server and SQL Server Compact Edition.&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;LINQ to SQL&lt;/STRONG&gt; (previous name DLinq) has enhanced the functionality from the May 2006 LINQ CTP. You can find it in System.Data.Linq namespace in System.Data.Linq.dll. New in this release is that DataContext provides optimized modes for read-only use and serialization . Also new is that DataShape streamlines eager loading capabilities and adds the ability to set queries on relationships&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;ADO.NET&lt;/STRONG&gt;&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Extended, more powerful data APIs with the ADO.NET Entity Framework&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;With the ADO.NET Entity Framework developers will be able to model the view of the data that is appropriate for each one of the applications they are building, independently of the structure of the data in the underlying database. The use of the Entity Data Model (EDM) enables developers to design models that follow the concepts built into the application, instead of having to map them to constructs available in relational stores. Once the model is in place, the powerful ADO.NET Entity Framework API is used to access and manipulate the data as .NET classes or as rows and columns, whatever is appropriate for each application.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Added paging and stored procedures for update (&amp;#8220;update customization&amp;#8221;) for ADO.NET Entity Framework:&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Paging: the paging support in the ADO.NET Entity Framework allows developers to &amp;#8220;page&amp;#8221; over data in a database by indicating the start row and number of rows to be included in the result. Paging is available through Entity SQL (using the LIMIT AND SKIP keywords) and through the query-builder methods in the ObjectQuery &lt;T&gt;class (Top and Skip). In a future CTP the feature will also be enabled to be used in LINQ queries by means of the standard Take and Skip LINQ operators.&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Stored-procedures for update customization: the Entity Framework by default automatically generates SQL statements for insert, update and delete operations when processing changes to entities in memory to be sent to the database. With the stored-procedures update customization feature developers have the option to override the automatic SQL generation and instead provide stored-procedures that will perform the insert, update and delete operations, which the system will call during entity change processing. Among other things, this enables scenarios where direct access to tables is restricted in the database and the only way to make changes to the data is through stored-procedures.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Microsoft Synchronization Services for ADO.NET&lt;/FONT&gt; 
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Provides an application programming interface (API) to synchronize data between data services and a local store. The Synchronization Services API is modeled after the ADO.NET data access APIs and gives you an intuitive way to synchronize data. It makes building applications for occasionally connected environments a logical extension of building applications where you can depend on a consistent network connection.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Cool stuff.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Download &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=b533619a-0008-4dd6-9ed1-47d482683c78&amp;amp;displaylang=en&amp;amp;tm" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source:&amp;nbsp;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Microsoft MVP C#&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;FONT face=Verdana size=2&gt;Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3165.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>LINQ Query Expressions and .NET Framework 3.5 Support in Reflector 5.0 - LINQ and C# 3.0 Tutorials</title><link>http://davidhayden.com/blog/dave/archive/2007/02/26/Reflector5LINQSupport.aspx</link><pubDate>Mon, 26 Feb 2007 12:26:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/02/26/Reflector5LINQSupport.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;LINQ Query Expressions and .NET Framework 3.5 Support in Reflector 5.0 - LINQ and C# 3.0 Tutorials&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Florida Microsoft MVP C#&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ), Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/10.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;Must Have .NET Developer Tools&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Everyone has probably heard that the new version of &lt;A href="http://www.aisto.com/roeder/dotnet/" target=_blank&gt;Reflector&lt;/A&gt;, version 5.0, was released recently. Reflector and several of its add-ins are &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/10.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;must have .NET Developer Tools&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; for spelunking into assemblies, etc.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Reflector 5.0 has LINQ and .NET Framework 3.5 Support as mentioned in the ReadMe File:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&amp;#8220;LINQ and .NET Framework 3.5: Reflector supports query expressions and other concepts introduced in C# 3.5. To enable this feature select ".NET 3.5" under View, Options, Disassembler, Optimization.&amp;#8220;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Very Cool. Just set your Reflector 5.0 Options to optimize for .NET Framework 3.5:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center&gt;&lt;FONT face=Verdana size=2&gt;&lt;IMG alt="LINQ and .NET Framework 3.5 Support in Reflector 5.0" src="http://www.davidhayden.com/photos/Reflector5LINQSupport.jpg"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I have compiled a bunch of LINQ and C# 3.0 Tutorials for the new features to be released in Visual Studio &amp;#8220;Orcas&amp;#8221;:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;LINQ and C# 3.0 Tutorials&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/ExtensionMethodsCSharp.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Extension Methods in C# 3.0 - C# Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/LambdaExpressionsExtensionMethodsLINQ.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Lambda Expressions Extension Methods and LINQ in C# 3.0 - C#3.0 Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/04/ObjectInitializationExpressions.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Feature - Object Initialization Expressions - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/AnonymousTypesCSharp.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Anonymous Types in C# 3.0 Needed for LINQ&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/ImplicitlyTypedLocalVariables.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Implicitly Typed Local Variables in C# 3.0 - The var Keyword&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/CSharpPowerPointPresentationSlidesVideo.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Powerpoint Presentation Slides and Video: Anders Hejlsberg - C# 3.0: Future Directions in Language Innovation&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/07/AutomaticallyImplementedPropertiesCSharpCompiler.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Automatically Implemented Properties - Visual Studio Orcas C# Compiler - C# 3.0&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/07/AutomaticallyImplementedPropertiesExtensionMethods.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Automatically Implemented Properties and Extension Methods Video - C# 3.0 and Visual Studio Orcas&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/11/CSharp3Specification.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Specification Documentation - C# 3.0 Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/11/TypeInferenceCSharpCompilerVideo.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Compiler and Type Inference Algorithm Video - Charlie Calvert and Eric Lippert&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/13/QueryExpressionTranslationAndLINQ.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Query Expression Translation in C# 3.0 - C# 3.0 Expression Queries and LINQ&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/18/ExpressionTrees.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expression Trees in C# 3.0 - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/21/QueryExpressionsAnonymousTypesLambaExpressions.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Features - C# 3.0 Examples - Query Expressions - Anonymous Types - Lamba Expressions - Extension Methods&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/21/BuildExpressionTreesTutorialAndExamples.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expression Trees C# 3.0 Part II - Building Expression Trees - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source: by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Florida Microsoft MVP C#&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/10.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;Must Have .NET Developer Tools&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3163.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>LINQ Video with Anders Hejlsberg - LINQ Tutorials - C# 3.0 Language Enhancements for LINQ</title><link>http://davidhayden.com/blog/dave/archive/2007/01/29/LINQVideoAndersHejlsbergLINQTutorials.aspx</link><pubDate>Mon, 29 Jan 2007 17:56:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2007/01/29/LINQVideoAndersHejlsbergLINQTutorials.aspx</guid><description>&lt;H1&gt;&lt;FONT face=Verdana&gt;LINQ Video with Anders - LINQ Tutorials - C# 3.0 Language Enhancements for LINQ&lt;/FONT&gt;&lt;/H1&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;by &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Florida .NET Developer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ), Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Charlie Calvert&amp;nbsp;&lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/charlie/archive/2007/01/26/anders-hejlsberg-on-linq-and-functional-programming.aspx" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;shot a great video&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; on LINQ with Anders Hejlsberg, the chief architect of C#. The video focuses on what it takes to create the Language INtegrated Query functionality such that it is not tied to a particular engine ( SQL, XML, In-Memory Collections, etc.&amp;nbsp;). Anders talks about Functional Programming and Metaprogramming as well as some particular language enhancements such as Lambda Expressions, Extension Methods, Query Expressions, and Expression Trees that will be in C# 3.0 and VB 9.0 to make LINQ possible and usable. I recommend the video as a good overview of the LINQ Big Picture.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I have written several tutorials on the new C# 3.0 Language Enhancements for LINQ to get you up to speed if you are interested:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/ExtensionMethodsCSharp.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Extension Methods in C# 3.0 - C# Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/11/30/LambdaExpressionsExtensionMethodsLINQ.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Lambda Expressions Extension Methods and LINQ in C# 3.0 - C#3.0 Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/04/ObjectInitializationExpressions.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Feature - Object Initialization Expressions - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/AnonymousTypesCSharp.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Anonymous Types in C# 3.0 Needed for LINQ&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/ImplicitlyTypedLocalVariables.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Implicitly Typed Local Variables in C# 3.0 - The var Keyword&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/06/CSharpPowerPointPresentationSlidesVideo.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Powerpoint Presentation Slides and Video: Anders Hejlsberg - C# 3.0: Future Directions in Language Innovation&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/07/AutomaticallyImplementedPropertiesCSharpCompiler.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Automatically Implemented Properties - Visual Studio Orcas C# Compiler - C# 3.0&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/07/AutomaticallyImplementedPropertiesExtensionMethods.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Automatically Implemented Properties and Extension Methods Video - C# 3.0 and Visual Studio Orcas&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/11/CSharp3Specification.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Specification Documentation - C# 3.0 Tutorials and Examples&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/11/TypeInferenceCSharpCompilerVideo.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Compiler and Type Inference Algorithm Video - Charlie Calvert and Eric Lippert&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/13/QueryExpressionTranslationAndLINQ.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Query Expression Translation in C# 3.0 - C# 3.0 Expression Queries and LINQ&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/18/ExpressionTrees.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expression Trees in C# 3.0 - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/21/QueryExpressionsAnonymousTypesLambaExpressions.aspx"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0 Features - C# 3.0 Examples - Query Expressions - Anonymous Types - Lamba Expressions - Extension Methods&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; &lt;/FONT&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2006/12/21/BuildExpressionTreesTutorialAndExamples.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expression Trees C# 3.0 Part II - Building Expression Trees - C# 3.0 Examples and Tutorials&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source:&amp;nbsp;&lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Florida .NET Developer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Filed: &lt;/FONT&gt;&lt;A href="http://davidhayden.com/blog/dave/category/58.aspx?Show=All"&gt;&lt;FONT face=Verdana size=2&gt;C# 3.0&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/3137.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>