<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/style/rss/rss_feed.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="/style/rss/rss_feed.css" type="text/css" media="screen" ?><rss version="2.0"><channel><title>Clipmarks | travislaborde's '.net' clips</title><link>http://clipmarks.com/clipper/travislaborde/tag/.net/</link><feedUrl>http://rss.clipmarks.com/clipper/travislaborde/tag/.net/</feedUrl><ttl>15</ttl><description>Clip, tag and save information that's important to you. Bookmarks save entire pages...Clipmarks save the specific content that matters to you!</description><language>en-us</language><item><title>Hidden Surprises in .NET 3.5 Service Pack 1</title><link>http://clipmarks.com/clipmark/19C98FFD-1BC3-42B9-B5FF-DC01396E757E/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://geekswithblogs.net/LessonsLearned/archive/2008/08/21/hidden-surprises-in-.net-3.5-service-pack-1.aspx" title="http://geekswithblogs.net/LessonsLearned/archive/2008/08/21/hidden-surprises-in-.net-3.5-service-pack-1.aspx"&gt;geekswithblogs.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV class="postTitle"&gt;
		&lt;A href="http://geekswithblogs.net/LessonsLearned/archive/2008/08/21/hidden-surprises-in-.net-3.5-service-pack-1.aspx" title="Title of this entry." id="viewpost_ascx_TitleUrl"&gt;Hidden Surprises in .NET 3.5 Service Pack 1&lt;/A&gt;
	&lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;PRE&gt;Could not load type 'System.Web.UI.ScriptReferenceBase' from assembly &lt;BR /&gt;'System.Web.Extensions, Version=3.5.0.0, Culture=neutral, &lt;BR /&gt;PublicKeyToken=31bf3856ad364e35'.&lt;/PRE&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV&gt;
You are stymied. You've never heard of the class; you certainly don't use it in your code. You use &lt;A target="_blank" href="http://msdn.microsoft.com/en-us/library/system.web.ui.scriptreference.aspx"&gt;ScriptReference&lt;/A&gt;, of course; who doesn't? But what's &lt;A target="_blank" href="http://msdn.microsoft.com/en-us/library/system.web.ui.scriptreferencebase.aspx"&gt;ScriptReferenceBase&lt;/A&gt;? Going to the documentation for ScriptReferenceBase, you learn that it is the parent class of ScriptReference and &lt;A target="_blank" href="http://msdn.microsoft.com/en-us/library/system.web.ui.compositescriptreference.aspx" id="ctl00_rs1_mainContentContainer_ctl29"&gt;&lt;SPAN class="nu"&gt;&lt;/SPAN&gt;CompositeScriptReference&lt;/A&gt;. What? No it isn't! The documentation for ScriptReference clearly indicates that it's parent is &lt;A target="_blank" id="ctl00_rs1_mainContentContainer_ctl108" href="http://msdn.microsoft.com/en-us/library/system.object.aspx"&gt;System&lt;SPAN class="cs"&gt;&lt;/SPAN&gt;&lt;SPAN class="vb"&gt;&lt;/SPAN&gt;&lt;SPAN class="cpp"&gt;&lt;/SPAN&gt;&lt;SPAN class="nu"&gt;.&lt;/SPAN&gt;Object&lt;/A&gt;! What's going on here?&lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV&gt;
Then you notice the Version Information for ScriptReferenceBase: "Supported in: 3.5 SP1". It's a new class for Service Pack 1. It doesn't exist in .NET 3.5 and the documentation for ScriptReference is clearly stale. &lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/asp.net/" rel="tag"&gt;asp.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/2008/" rel="tag"&gt;2008&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://geekswithblogs.net/LessonsLearned/archive/2008/08/21/hidden-surprises-in-.net-3.5-service-pack-1.aspx</clipSource><pubDate>Fri, 22 Aug 2008 12:14:21 GMT</pubDate></item><item><title>Checking Request is Synchronous or Asynchronous in ASP.NET</title><link>http://clipmarks.com/clipmark/C5D3A32A-2E25-4AB0-B8BD-1A5EC3A27D8C/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://www.codeproject.com/script/Articles/Article.aspx?aid=28486" title="http://www.codeproject.com/script/Articles/Article.aspx?aid=28486"&gt;www.codeproject.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;SPAN class="ArticleTopTitle" id="ctl00_ArticleTopHeader_ArticleTitle"&gt;Checking Request is Synchronous or Asynchronous in ASP.NET&lt;/SPAN&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;In case Asp.Net 2.0 and AJAX, when any exception thrown while execution of asynchronous request, it is catched in "&lt;CODE&gt;ScriptManager1_AsyncPostBackError&lt;/CODE&gt;" event, then AJAX framework handles that exception and shows java script alert box to user. No event (&lt;CODE&gt;Application_Error&lt;/CODE&gt;) from Global.asax file gets fired.&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;But, in Asp.Net 3.5 AJAX they changed exception handling mechanism and now both events "&lt;CODE&gt;ScriptManager1_AsyncPostBackError&lt;/CODE&gt;" and &lt;CODE&gt;Application_Error &lt;/CODE&gt;from Global.asax gets fired.&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;&lt;EM&gt;Issue&lt;/EM&gt;: Now, if exception occurs in case of asynchronous request, application tries to redirect user to generic error page instead of showing JavaScript alert and ends up in another exception as &lt;CODE&gt;Redirect &lt;/CODE&gt;is not allowed in asynchronous request. &lt;EM&gt;Ha.... exception within Application_Error method&lt;/EM&gt; ;).&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/2D90D022-81E1-42D0-95B8-F113DAB23CA9.jpg" alt="image" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/asp.net/" rel="tag"&gt;asp.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/2008/" rel="tag"&gt;2008&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://www.codeproject.com/script/Articles/Article.aspx?aid=28486</clipSource><pubDate>Tue, 12 Aug 2008 18:05:44 GMT</pubDate></item><item><title>.NET Framework 3.5 SP1 and Visual Studio 2008 SP1 download and troubleshooting links</title><link>http://clipmarks.com/clipmark/CD5108F0-FFA6-41E5-9BF9-58711E3F1157/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://blogs.msdn.com/astebner/archive/2008/08/11/8849574.aspx" title="http://blogs.msdn.com/astebner/archive/2008/08/11/8849574.aspx"&gt;blogs.msdn.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H2&gt;.NET Framework 3.5 SP1 and Visual Studio 2008 SP1 download and troubleshooting links&lt;/H2&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;&lt;STRONG&gt;SP1 download links&lt;/STRONG&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;UL&gt; &lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7"&gt;.NET Framework 3.5 SP1 web download bootstrapper&lt;/A&gt;&lt;/LI&gt; &lt;LI&gt;&lt;A href="http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe"&gt;.NET Framework 3.5 SP1 full install package&lt;/A&gt;&lt;/LI&gt; &lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E"&gt;Visual Studio 2008 SP1&lt;/A&gt;&lt;/LI&gt; &lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=F3FBB04E-92C2-4701-B4BA-92E26E408569"&gt;Visual Studio 2008 Express Editions with SP1 web download bootstrappers&lt;/A&gt;&lt;/LI&gt; &lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9E40A5B6-DA41-43A2-A06D-3CEE196BFE3D"&gt;Visual Studio Team System 2008 Team Foundation Server SP1&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/2008/" rel="tag"&gt;2008&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://blogs.msdn.com/astebner/archive/2008/08/11/8849574.aspx</clipSource><pubDate>Tue, 12 Aug 2008 12:03:29 GMT</pubDate></item><item><title>Speaking at Connecticut Code Camp 8/16/2008</title><link>http://clipmarks.com/clipmark/5A89FCA4-00F7-4DD6-90D7-6ACD35AC65F4/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  Wish me luck!  This will be my first time speaking away from "the home crowd!"  &lt;br/&gt;&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://www.datadeluxe.com/News.aspx" title="http://www.datadeluxe.com/News.aspx"&gt;www.datadeluxe.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H4&gt;
						&lt;A href="http://www.datadeluxe.com/16/section.aspx/7" id="p_ctl01_rptArticles_ctl00_hplTitle"&gt;Speaking at Connecticut Code Camp 8/16/2008&lt;/A&gt;&lt;/H4&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV id="p_ctl01_rptArticles_ctl00_pnlContent"&gt;&lt;DIV&gt;
		
							I will be at the &lt;A href="http://www.ctdotnet.com/"&gt;Connecticut Code Camp&lt;/A&gt; on 8/16/2008 presenting the same talk that went so well at the last &lt;A href="http://www.phillydotnet.org"&gt;Philly.net&lt;/A&gt; Code Camp: SRP / DI / IOC : Don't Leave Sub Main Without Them!&lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
This talk is a very gentle introduction to:&lt;/DIV&gt;
&lt;BR /&gt;
The Single Responsibility Principle&lt;BR /&gt;
Dependency Injection&lt;BR /&gt;&lt;DIV&gt;
Inversion of Control&lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
These great tastes taste GREAT together, and I'm very passionate about "spreading th word!"&lt;/DIV&gt;
&lt;BR /&gt;
In this talk we will go over what these things ARE, and WHY you should be using them.  Rather than dive into one of the existing "frameworks" such as Spring.NET, Castle, or Unity, we will build our own right there during the talk and demonstrate how it can improve your code.
					
	&lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://www.datadeluxe.com/News.aspx</clipSource><pubDate>Tue, 05 Aug 2008 11:52:11 GMT</pubDate></item><item><title>Speeding Up FireFox When Using the ASP.NET Development Server from Localhost</title><link>http://clipmarks.com/clipmark/FA7D7AF3-83A2-44C2-813A-B0FE5BD2AA94/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://scottonwriting.net/sowblog/posts/13367.aspx#13368" title="http://scottonwriting.net/sowblog/posts/13367.aspx#13368"&gt;scottonwriting.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H2&gt;
			&lt;A href="http://scottonwriting.net/sowblog/posts/13367.aspx" id="_ctl0__ctl4_TitleUrl"&gt;Speeding Up FireFox When Using the ASP.NET Development Server from Localhost&lt;/A&gt;
		&lt;/H2&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;The problem was I noticed that Firefox was loading pages &lt;EM&gt;very slowly&lt;/EM&gt;. I'd visit a site through localhost (via the &lt;A href="http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx"&gt;ASP.NET Development Web Server&lt;/A&gt;) and pages would take several seconds to load.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Firebug will show you the total number of network resources downloaded when visiting a page, along with the time it took to download each.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/507B31E8-0355-4863-B66A-CD5C87CC0922.gif" alt="Firebug" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Each resource - from the 4KB HTML fiel to the 7KB JPG file, was taking close to a FULL second to retrieve!&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;I next opened Internet Explorer - the same pages loaded instantaneously.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Turns out that there is a known issue with Firefox's IPv6 support and the ASP.NET Web Development Server that introduces these lengthy delays.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Consequently, to fix this problem of slow response times when visiting localhost using Firefox, either set the network.dns.diableIPv6 configuration property to true &lt;EM&gt;or&lt;/EM&gt; set the &lt;STRONG&gt;network.dns.ipv4OnlyDomains&lt;/STRONG&gt; configuration property to “localhost”.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/asp.net/" rel="tag"&gt;asp.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/firefox/" rel="tag"&gt;firefox&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://scottonwriting.net/sowblog/posts/13367.aspx#13368</clipSource><pubDate>Thu, 10 Jul 2008 12:26:05 GMT</pubDate></item><item><title>Declare Active Conventions inside C# or VB.NET Source Code</title><link>http://clipmarks.com/clipmark/AD60D22A-D2AB-4DF2-A70C-2FA7AA1DB88C/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  NDepend is awesome &lt;img src="http://clipmarks.com/images/icons/smilies/happy.gif?r=2" style="margin-bottom: -4px;" alt="" /&gt;&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://codebetter.com/blogs/patricksmacchia/archive/2008/06/25/declare-active-conventions-inside-c-or-vb-net-source-code.aspx" title="http://codebetter.com/blogs/patricksmacchia/archive/2008/06/25/declare-active-conventions-inside-c-or-vb-net-source-code.aspx"&gt;codebetter.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H4 class="BlogPostHeader"&gt;Declare Active Conventions inside C# or VB.NET Source Code &lt;/H4&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;With the last version of &lt;A target="_blank" href="http://www.NDepend.com"&gt;NDepend&lt;/A&gt;, we polished one particular scenario that I would like to describe properly: The possibility to store &lt;A target="_blank" href="http://www.ndepend.com/Features.aspx#CQL"&gt;CQL&lt;/A&gt; rules inside source code.&lt;BR /&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Consider this piece of code:&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/FB166EC3-716D-49F8-BBA6-25A6960A2720.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;let's write a custom convention that checks that:&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt; When a method is calling the method &lt;I&gt;Foo1()&lt;/I&gt;, it &lt;B&gt;must &lt;/B&gt;also call the method &lt;I&gt;Foo2(int)&lt;/I&gt;.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/3B492E1E-B9B8-4088-9D11-3847359BF734.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Right click the editor and select: &lt;I&gt;Copy to clipboard to insert this query in C# source code&lt;/I&gt; ...&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/1B27049B-44AB-4B20-8097-C5A242B0DDF4.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;... and paste the clipboard content just before the &lt;I&gt;Fct1()&lt;/I&gt; method definition. An attribute is now tagging the &lt;I&gt;Fct1() &lt;/I&gt;method definition.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/9900789D-2CB3-4808-BFBE-459284007557.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;It makes sense to declare such constraint near the &lt;I&gt;Foo1() / Foo2(int)&lt;/I&gt; methods definitions. This way, during code review or refactoring developers cannot miss it. This is active documentation. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://codebetter.com/blogs/patricksmacchia/archive/2008/06/25/declare-active-conventions-inside-c-or-vb-net-source-code.aspx</clipSource><pubDate>Thu, 26 Jun 2008 12:43:34 GMT</pubDate></item><item><title>PhillyNJ.NET tomorrow night!</title><link>http://clipmarks.com/clipmark/3CF2F9FC-134B-40CB-A906-06C2B2AC14BE/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://www.phillynj.net/home/meetings/2008-06-26.aspx" title="http://www.phillynj.net/home/meetings/2008-06-26.aspx"&gt;www.phillynj.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H3&gt;Vince Napoli - Tips and Tricks with SSIS&lt;/H3&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/0EFEA8BD-47C5-4105-B214-857353D6AFCF.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;This presentation will show you how to create a SSIS package with package variables and database connections, and demonstrate multiple techniques on how to modify your configuration at runtime.&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H3&gt;Vlad Bezden - WPF Databinding&lt;/H3&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/4ADA498A-C048-4945-ABBE-D4057E3DF823.jpg" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;Data binding is a mechanism to link user controls with data in their applications.  Data binding has always been a very powerful mechanism, but with introducing of WPF it became one of the top features. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://www.phillynj.net/home/meetings/2008-06-26.aspx</clipSource><pubDate>Wed, 25 Jun 2008 13:01:15 GMT</pubDate></item><item><title>ZipFS: Using ZIP files as virtual directories</title><link>http://clipmarks.com/clipmark/5DA4C7DF-3585-40C7-A767-0B279D6EA69B/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  not actual IIS virtual directories, mind you... much cooler than that &lt;img src="http://clipmarks.com/images/icons/smilies/happy.gif?r=2" style="margin-bottom: -4px;" alt="" /&gt;&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://www.codeproject.com/KB/aspnet/aspnetzipfs.aspx" title="http://www.codeproject.com/KB/aspnet/aspnetzipfs.aspx"&gt;www.codeproject.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H1&gt;&lt;SPAN class="ArticleTopTitle" id="ctl00_ArticleTopHeader_ArticleTitle"&gt;ZipFS: Using ZIP files as virtual directories or read-only resource containers in ASP.NET&lt;/SPAN&gt;&lt;/H1&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;In your ASP.NET application, you may have a set of static files and directories with many image, script, resource files in them. Especially extensive javascript libraries with plugin support (like TinyMCE) may have hundreds of files on their own. You probably never modify any of these files, unless you upgrade to a newer version of those libraries.&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;And here comes my solution proposal: Why not keep these libraries (or other resources) in a zip file of their own (as most of them already distributed as zip files) and use them as if that ZIP file is a virtual directory on ASP.NET server? (note: "virtual directory" here is not related to IIS virtual directories) &lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/asp.net/" rel="tag"&gt;asp.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://www.codeproject.com/KB/aspnet/aspnetzipfs.aspx</clipSource><pubDate>Thu, 15 May 2008 12:36:37 GMT</pubDate></item><item><title>NDepend Shows You What's New in .NET 3.5 SP1 beta</title><link>http://clipmarks.com/clipmark/7FCC7CD7-48B5-4C54-815B-E7193592B967/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  awesome example of a great tool in use.&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://codebetter.com/blogs/patricksmacchia/archive/2008/05/13/net-3-5-sp1-beta-changes-overview.aspx" title="http://codebetter.com/blogs/patricksmacchia/archive/2008/05/13/net-3-5-sp1-beta-changes-overview.aspx"&gt;codebetter.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;SPAN&gt;&lt;I&gt;Scott
Hanselman&lt;/I&gt; just published a blog post where he used &lt;A target="_blank" href="http://www.NDepend.com"&gt;NDepend &lt;/A&gt;to see changes in the
code of &lt;I&gt;.NET 3.5 SP1 beta&lt;/I&gt; (&lt;A target="_blank" href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx"&gt;that has just been released&lt;/A&gt;).
Let’s expose the exhaustive list of differences:&lt;/SPAN&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;Summary:&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# IL
instructions:&lt;SPAN&gt;    &lt;/SPAN&gt;&lt;B&gt;8 598 933 to 8 589 008&lt;/B&gt;&lt;SPAN&gt;      &lt;/SPAN&gt;(-9 925&lt;SPAN&gt;  
&lt;/SPAN&gt;-0.1%)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# Assemblies:&lt;SPAN&gt;    &lt;/SPAN&gt;112&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# Namespaces:&lt;SPAN&gt;    &lt;/SPAN&gt;&lt;B&gt;919 to 929&lt;/B&gt;&lt;SPAN&gt;      &lt;/SPAN&gt;(+10&lt;SPAN&gt;  
&lt;/SPAN&gt;+1.1%)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# Types&lt;SPAN&gt;:    &lt;/SPAN&gt;&lt;B&gt;39 988 to 40 402&lt;/B&gt;&lt;SPAN&gt;      &lt;/SPAN&gt;(+414&lt;SPAN&gt;  
&lt;/SPAN&gt;+1%)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# Methods:&lt;SPAN&gt;    &lt;/SPAN&gt;&lt;B&gt;387 421 to 385 253&lt;/B&gt;&lt;SPAN&gt;      &lt;/SPAN&gt;(-2 168&lt;SPAN&gt;  
&lt;/SPAN&gt;-0.6%)&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;# Fields&lt;SPAN&gt;:    &lt;/SPAN&gt;&lt;B&gt;241 567 to 246 320&lt;/B&gt;&lt;SPAN&gt;      &lt;/SPAN&gt;(+4 753&lt;SPAN&gt;  
&lt;/SPAN&gt;+2%)&lt;/SPAN&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;&lt;A target="_blank" href="http://codebetter.com/blogs/patricksmacchia/DotNet35SP1Beta/PublicMethodsAdded.zip"&gt;636 new
public methods&lt;/A&gt;: &lt;SPAN&gt; &lt;/SPAN&gt;
&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;SELECT&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;METHODS&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;WHERE&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;IsPublic&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;AND&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;Was&lt;/SPAN&gt;&lt;SPAN&gt;Added&lt;/SPAN&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;&lt;A target="_blank" href="http://codebetter.com/blogs/patricksmacchia/DotNet35SP1Beta/PublicTypesRemoved.zip"&gt;8 public types
removed&lt;/A&gt;: &lt;A href="http://codebetter.com/blogs/patricksmacchia/DotNet35SP1Beta/PublicTypesRemoved.zip"&gt;&lt;/A&gt;
&lt;/SPAN&gt;&lt;/P&gt;

&lt;P class="MsoNormal"&gt;&lt;SPAN&gt;SELECT&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;TYPES&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;WHERE&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;IsPublic&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;AND&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;WasRemoved&lt;/SPAN&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/ndepend/" rel="tag"&gt;ndepend&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://codebetter.com/blogs/patricksmacchia/archive/2008/05/13/net-3-5-sp1-beta-changes-overview.aspx</clipSource><pubDate>Wed, 14 May 2008 12:44:07 GMT</pubDate></item><item><title>PhillyNJ.NET: Free CodeRush / Refactor! at every meeting!</title><link>http://clipmarks.com/clipmark/FFE38484-F008-401B-945D-2B4BF4F7F133/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  What a great gift from the folks at DevExpress!&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://www.phillynj.net/home.aspx" title="http://www.phillynj.net/home.aspx"&gt;www.phillynj.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H3&gt;Free CodeRush / Refactor! at every meeting!&lt;/H3&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV&gt;The fine folks at &lt;STRONG&gt;DevExpress&lt;/STRONG&gt; have agreed to allow our group to give away one FREE license to &lt;A href="http://www.devexpress.com/Products/NET/IDETools/CodeRush/"&gt;CodeRush and Refactor!&lt;/A&gt; at every meeting!  This is a truly great developer tool and enhancement for your Visual Studio IDE.  &lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV&gt;
They would like me to mention &lt;A href="http://www.devexpress.com/free"&gt;this link&lt;/A&gt; where you can download &lt;FONT color="#ff0000"&gt;free controls&lt;/FONT&gt;, and they have provided the following sales blurb:&lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://www.phillynj.net/home.aspx</clipSource><pubDate>Mon, 12 May 2008 16:20:53 GMT</pubDate></item><item><title>Philly.NET Code Camp: SRP / DI / IOC : Don't Leave Sub Main Without Them</title><link>http://clipmarks.com/clipmark/61C97BEF-20EF-4884-8E2C-E636346D35AF/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  My most favorite programming topic.  See you there!&lt;br/&gt; &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://weblogs.sqlteam.com/travisl/archive/2008/05/08/60594.aspx" title="http://weblogs.sqlteam.com/travisl/archive/2008/05/08/60594.aspx"&gt;weblogs.sqlteam.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H2&gt;&lt;A href="http://weblogs.sqlteam.com/travisl/archive/2008/05/08/60594.aspx" title="Title of this entry." class="singleposttitle" id="viewpost_ascx_TitleUrl"&gt;SRP / DI / IOC : Don't Leave Sub Main Without Them&lt;/A&gt;&lt;/H2&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV class="content"&gt;&lt;DIV&gt;
			I'll be giving a talk at the &lt;A href="http://www.phillydotnet.org/Meetings/MeetingEmails/2008/May172008/tabid/677/Default.aspx"&gt;Philly.NET Code Camp on 5/17/2008&lt;/A&gt;.  &lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
The &lt;A href="http://en.wikipedia.org/wiki/Single_responsibility_principle"&gt;Single Responsibility Principle&lt;/A&gt;.  &lt;A href="http://msdn.microsoft.com/en-us/magazine/cc163739.aspx"&gt;Dependency Injection&lt;/A&gt;.  &lt;A href="http://www.martinfowler.com/articles/injection.html"&gt;Inversion of Control&lt;/A&gt;.  &lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
If you don't already know and apply these concepts in your day-to-day development this talk is for you.  &lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
The talk will present a very easy learning curve into these topics.  We will cover the "why" as well as the "how."  We will take a simple application written without these techniques and transform it step-by-step.  &lt;/DIV&gt;
&lt;BR /&gt;&lt;DIV&gt;
While we will see that these things make testing your code much easier, we will also see that their use goes far beyond testing scenarios.   &lt;/DIV&gt;
&lt;BR /&gt;
In order to better communicate the "how" , we will not be using any pre-existing &lt;SPAN class="nfakPe"&gt;IOC&lt;/SPAN&gt; framework such as &lt;A href="http://www.castleproject.org/container/index.html"&gt;Castle&lt;/A&gt;, &lt;A href="http://www.springframework.net/"&gt;Spring.NET&lt;/A&gt;, &lt;A href="http://structuremap.sourceforge.net/Default.htm"&gt;StructureMap&lt;/A&gt;, etc. Rather, we will build our own simple implementation during the talk.
			&lt;DIV class="itemdesc"&gt;
				&lt;A class="printIcon" href="javascript:alert('This link contains javascript. Please visit the clip source to follow this link.');" target="_self"&gt;&lt;SPAN&gt;Print&lt;/SPAN&gt;&lt;/A&gt; | posted on Thursday, May 08, 2008 11:32 AM
			&lt;/DIV&gt;
		&lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://weblogs.sqlteam.com/travisl/archive/2008/05/08/60594.aspx</clipSource><pubDate>Thu, 08 May 2008 16:34:29 GMT</pubDate></item><item><title>LINQ To Regex</title><link>http://clipmarks.com/clipmark/6CD09501-3F47-4F39-BE69-C082E69104BC/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://weblogs.asp.net/rosherove/archive/2008/05/06/introducing-linq-to-regex.aspx" title="http://weblogs.asp.net/rosherove/archive/2008/05/06/introducing-linq-to-regex.aspx"&gt;weblogs.asp.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H2&gt;Introducing LINQ To Regex&lt;/H2&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;DIV&gt;   &lt;P&gt;  [&lt;SPAN&gt;Test&lt;/SPAN&gt;]&lt;/P&gt;    &lt;P&gt;        &lt;SPAN&gt;public&lt;/SPAN&gt; &lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;FindEmailUsingPattern&lt;/SPAN&gt;()&lt;/P&gt;    &lt;P&gt;        {&lt;/P&gt;    &lt;P&gt;            &lt;SPAN&gt;var&lt;/SPAN&gt; &lt;SPAN&gt;query&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;from&lt;/SPAN&gt; &lt;SPAN&gt;match&lt;/SPAN&gt; &lt;SPAN&gt;in&lt;/SPAN&gt; &lt;/P&gt;    &lt;P&gt;               &lt;SPAN&gt;RegexQuery&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Against&lt;/SPAN&gt;(&lt;SPAN&gt;"sdlfjsfl43r3490r98*(&lt;A href="http://weblogs.asp.net/rosherove/archive/2008/05/06/mailto:*Email@somewhere.com_dakj3j"&gt;*Email@somewhere.com_dakj3j&lt;/A&gt;"&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;                        &lt;SPAN&gt;where&lt;/SPAN&gt; &lt;SPAN&gt;match&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Word&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Repeat&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AtLeast&lt;/SPAN&gt;(&lt;SPAN&gt;1&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;                            &lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Literal&lt;/SPAN&gt;(&lt;SPAN&gt;"@"&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;                            &lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Word&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Repeat&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AtLeast&lt;/SPAN&gt;(&lt;SPAN&gt;1&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;                            &lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Literal&lt;/SPAN&gt;(&lt;SPAN&gt;"."&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;                            &lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Choice&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Either&lt;/SPAN&gt;(&lt;/P&gt;    &lt;P&gt;                                 &lt;SPAN&gt;Pattern&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;With&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Literal&lt;/SPAN&gt;(&lt;SPAN&gt;"com"&lt;/SPAN&gt;),&lt;/P&gt;    &lt;P&gt;                                 &lt;SPAN&gt;Pattern&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;With&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Literal&lt;/SPAN&gt;(&lt;SPAN&gt;"net"&lt;/SPAN&gt;))&lt;/P&gt;    &lt;P&gt;                            &lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;IsTrue&lt;/SPAN&gt;()&lt;/P&gt;    &lt;P&gt;                        &lt;SPAN&gt;select&lt;/SPAN&gt; &lt;SPAN&gt;match&lt;/SPAN&gt;;&lt;/P&gt;    &lt;P&gt;            &lt;SPAN&gt;foreach&lt;/SPAN&gt; (&lt;SPAN&gt;var&lt;/SPAN&gt; &lt;SPAN&gt;match&lt;/SPAN&gt; &lt;SPAN&gt;in&lt;/SPAN&gt; &lt;SPAN&gt;query&lt;/SPAN&gt;)&lt;/P&gt;    &lt;P&gt;            {&lt;/P&gt;    &lt;P&gt;                &lt;SPAN&gt;Assert&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;AreEqual&lt;/SPAN&gt;(&lt;SPAN&gt;"Email@somewhere.com"&lt;/SPAN&gt;,&lt;SPAN&gt;match&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;Value&lt;/SPAN&gt;);&lt;/P&gt;    &lt;P&gt;            }&lt;/P&gt;    &lt;P&gt;        }&lt;/P&gt; &lt;/DIV&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/linq/" rel="tag"&gt;linq&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://weblogs.asp.net/rosherove/archive/2008/05/06/introducing-linq-to-regex.aspx</clipSource><pubDate>Wed, 07 May 2008 12:48:04 GMT</pubDate></item><item><title>TestDriven.Net 2.13: Support for NUnit 2.4.7</title><link>http://clipmarks.com/clipmark/77F98AE5-1235-4D1D-8A85-1B84172CD4E1/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://weblogs.asp.net/nunitaddin/archive/2008/04/28/testdriven-net-2-13-support-for-nunit-2-4-7.aspx" title="http://weblogs.asp.net/nunitaddin/archive/2008/04/28/testdriven-net-2-13-support-for-nunit-2-4-7.aspx"&gt;weblogs.asp.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H2&gt;TestDriven.Net 2.13: Support for NUnit 2.4.7&lt;/H2&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;The latest &lt;A href="http://www.testdriven.net/download.aspx"&gt;release&lt;/A&gt; of &lt;A href="http://www.testdriven.net/"&gt;TestDriven.Net&lt;/A&gt; is now compiled against &lt;A href="http://nunit.com/index.php?p=releaseNotes&amp;r=2.4.7"&gt;NUnit 2.4.7&lt;/A&gt;. This version of &lt;A href="http://www.nunit.com"&gt;NUnit&lt;/A&gt; includes &lt;A href="http://www.andreas-schlapsi.com/"&gt;Andreas Schlapsi&lt;/A&gt;'s popular RowTest extension. The RowTest attributes have been moved to the 'nunit.framework.extensions' assembly (which you can find here: &lt;EM&gt;\Program Files\TestDriven.NET 2.0\NUnit\2.4\nunit.core.extensions.dll&lt;/EM&gt;).&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/FDED7C0F-1765-44C5-B773-39B7E45287BA.png" alt="RowTest" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;The prime number function might look like this:&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/F834963B-ED78-41F1-A8E5-99D92F82FEB8.png" alt="IsPrime" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;As you can see the intention of the test is very clear and there is no repetition. I've written more about parameterized unit tests &lt;A href="http://weblogs.asp.net/nunitaddin/archive/2007/12/17/testdriven-net-2-11-parameterized-nunit-tests.aspx"&gt;here&lt;/A&gt;.&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://weblogs.asp.net/nunitaddin/archive/2008/04/28/testdriven-net-2-13-support-for-nunit-2-4-7.aspx</clipSource><pubDate>Wed, 30 Apr 2008 12:41:43 GMT</pubDate></item><item><title>Free Kentico License + Hosting for .NET User Groups</title><link>http://clipmarks.com/clipmark/2AAAFAAD-6BE8-4E18-B23D-F852A2758487/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://joeon.net/post.aspx?id=eb170258-0871-49ed-8ee0-0dd4f2d3df42" title="http://joeon.net/post.aspx?id=eb170258-0871-49ed-8ee0-0dd4f2d3df42"&gt;joeon.net&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H1&gt;&lt;A href="http://joeon.net/post/Free-CMS-and-Hosting-for-NET-User-Groups.aspx" class="postheader taggedlink"&gt;Free CMS and Hosting for .NET User Groups&lt;/A&gt;&lt;/H1&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/E3E24797-7F4D-4BF1-B5A3-82F908DAC845.gif" alt="logo247x97" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;img src="http://clipmarks.com/image_cache/travislaborde/512/7ABC0B28-1EB0-4A57-AB6D-F2FEEE7B1761.png" alt="Applied" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;&lt;IMG src="http://www.prweb.com/images_v4/quote_left.gif" /&gt; &lt;A href="http://www.appliedi.net"&gt;We are excited to further our relationship with the .NET user community as we continue to build a line of robust hosting services geared toward developers&lt;/A&gt; &lt;IMG align="absbottom" src="http://www.prweb.com/images_v4/quote_right.gif" /&gt;&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;Users will receive a free license of Kentico CMS Enterprise Edition (valued at $1,499) and a ready-to-use Web site template that helps .NET User Groups to share information with group members; inform members about group meetings; publish articles and presentations from the meetings; communicate in discussion forums; distribute e-mail newsletters; create blogs; share files and photos; and create member-only areas. &lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;The custom Web site template was created to meet the specific needs of .NET user groups. The template allows groups to focus on their community activities, rather than exhaust resources building a Web site. &lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;.NET User Groups can sign up for a free license and hosting at &lt;A href="http://www.kentico.com/dng.aspx"&gt;http://www.kentico.com/dng.aspx&lt;/A&gt;. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/cms/" rel="tag"&gt;cms&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://joeon.net/post.aspx?id=eb170258-0871-49ed-8ee0-0dd4f2d3df42</clipSource><pubDate>Wed, 30 Apr 2008 12:19:03 GMT</pubDate></item><item><title>Lambda Expressions in 5 Minutes</title><link>http://clipmarks.com/clipmark/37A24CC8-81F8-4265-B7DF-34EBC6EFCF60/</link><description>&lt;b&gt;clipped by:&lt;/b&gt; &lt;a href="http://clipmarks.com/clipper/travislaborde/"&gt;travislaborde&lt;/a&gt;&lt;br&gt;&lt;b&gt;clipper's remarks:&lt;/b&gt;  code examples follow... &lt;br&gt;&lt;div border="2" style="margin-top: 10px; border:#000000 1px solid;" width="90%"&gt;&lt;div style="background-color:"&gt;&lt;div align="center" width="100%" style="padding:4px;margin-bottom:4px;background-color:#666666;overflow:hidden;"&gt;&lt;span style="color:#FFFFFF;font-weight:bold;"&gt;Clip Source: &lt;a style="color:#FFFFFF;" href="http://blogs.msdn.com/johnwpowell/archive/2008/04/26/lambda-expressions-in-5-minutes.aspx" title="http://blogs.msdn.com/johnwpowell/archive/2008/04/26/lambda-expressions-in-5-minutes.aspx"&gt;blogs.msdn.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;H4 class="BlogPostHeader"&gt;Lambda Expressions in 5 Minutes &lt;/H4&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P mce_keep="true"&gt;You don't need a course in advanced calculus to understand Lambda Expressions.  In fact, you can learn the basics in 5 minutes or less.  To accomplish this, we are going to revise a code snippet for an event handler from .Net 1.1 syntax to a syntactically sweet Lambda Expression.  Before we jump to the code, let's define some basic terms for this exercise:&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr size="2" color="#666666" /&gt;&lt;div style="padding: 10px;"&gt;&lt;div style="text-align:left;"&gt;&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Delegate&lt;/U&gt;&lt;/STRONG&gt;&lt;BR /&gt;A type that references a method (or a strongly-typed function pointer in c++ terms). &lt;EM&gt; The following variable of type EventHandler contains a reference to a method I would like run when Button1 is clicked.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Named Method&lt;/U&gt;&lt;/STRONG&gt;&lt;BR /&gt;A method with a name.  &lt;EM&gt;When Button1 is clicked, execute the following named method "Button1_ClickHandler."&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Anonymous Method&lt;/U&gt;&lt;/STRONG&gt;&lt;BR /&gt;A method without a name.  &lt;EM&gt;When Button1 is clicked, execute the following statement(s): MessageBox.Show("You clicked Button1!");&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Anonymous Function&lt;/U&gt;&lt;/STRONG&gt;&lt;BR /&gt;An anonymous method that returns a value.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Lambda Expression&lt;/U&gt;&lt;/STRONG&gt;&lt;BR /&gt;An expression syntax for an anonymous function.&lt;/P&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br&gt;&lt;div style="margin-bottom: 40px;"&gt;Tags: &lt;a href="http://clipmarks.com/tags/programming/" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://clipmarks.com/tags/.net/" rel="tag"&gt;.net&lt;/a&gt;&lt;/div&gt;</description><clipSource>http://blogs.msdn.com/johnwpowell/archive/2008/04/26/lambda-expressions-in-5-minutes.aspx</clipSource><pubDate>Mon, 28 Apr 2008 12:05:26 GMT</pubDate></item></channel></rss>