<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Teme on .NET</title>
	<atom:link href="http://temebele.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://temebele.wordpress.com</link>
	<description>Sharing some thoughts and practices</description>
	<lastBuildDate>Sat, 10 Dec 2011 17:43:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='temebele.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Teme on .NET</title>
		<link>http://temebele.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://temebele.wordpress.com/osd.xml" title="Teme on .NET" />
	<atom:link rel='hub' href='http://temebele.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Jquery &#8220;live&#8221; gotchas with Colorbox</title>
		<link>http://temebele.wordpress.com/2011/09/13/jquery-live-gotchas-with-colorbox/</link>
		<comments>http://temebele.wordpress.com/2011/09/13/jquery-live-gotchas-with-colorbox/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 21:24:54 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">http://temebele.wordpress.com/?p=218</guid>
		<description><![CDATA[If you have a script like the following with large_popup as the css class of your hyperlink. $(document).ready(function() { $(". large_popup").live('click', function(e) { e.preventDefault(); $(this).colorbox({ overlayClose: false, close: "x", open: true, transition: "none", width: "995px" }); }); }); Change it to: $(document).ready(function () { $(".large_popup").live('click', function (e) { e.preventDefault(); $.colorbox({href: this.href, overlayClose: false, close: "x", open: [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=218&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have a script like the following with large_popup as the css class of your hyperlink.</p>
<pre>$(document).ready(function() {
    $(". large_popup").live('click', function(e) {
        e.preventDefault();
        $(this).colorbox({
            overlayClose: false,
            close: "x",
            open: true,
            transition: "none",
            width: "995px"
        });
    });
});
Change it to:
$(document).ready(function () {
      $(".large_popup").live('click', function (e) {
           e.preventDefault();
            $.colorbox({href: this.href,
                overlayClose: false,
                close: "x",
                open: true,
                transition: "none",
                width: "995px"
            });
        });
});
Otherwise, multiple colorbox calls fire everytime you click that link.</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/218/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=218&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2011/09/13/jquery-live-gotchas-with-colorbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>Entity Framework vs. NHibernate Feature by Feature comparison</title>
		<link>http://temebele.wordpress.com/2011/06/06/entity-framework-vs-nhibernate-feature-by-feature-comparison/</link>
		<comments>http://temebele.wordpress.com/2011/06/06/entity-framework-vs-nhibernate-feature-by-feature-comparison/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 03:04:24 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">https://temebele.wordpress.com/?p=201</guid>
		<description><![CDATA[Technology teams developing business applications often spend so much time analyzing and comparing tools and frameworks. This is mainly due to the fragmented nature of the providers, both commercial vendors and Open source contributors that build these tools and frameworks. The choice even gets worse with Microsoft’s popular culture in redefining and reinventing tools and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=201&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;"><span style="font-family:Calibri;"><span style="font-size:small;">Technology teams developing business applications often spend so much time analyzing and comparing tools and frameworks. This is mainly due to the fragmented nature of the providers, both commercial vendors and Open source contributors that build these tools and frameworks. The choice even gets worse with Microsoft’s popular culture in redefining and reinventing tools and frameworks that already exist in the Open source community and were already fully adapted by developers. MS always argues that the only time they reinvent the wheel is when they see that there is a bigger vision on how that product fits in the Microsoft ecosystem. At least I know that data platform’s long term vision was the reason they gave as the drive for Entity Framework which was not just a re-invention of other Open Source ORMs but also Microsoft’s own LINQ to SQL. </span><em><span style="line-height:115%;font-size:10pt;">(Check out Frans Bouma’s blog, </span></em></span></span><a href="http://weblogs.asp.net/fbouma/archive/2008/05/19/why-use-the-entity-framework-yeah-why-exactly.aspx"><em><span style="line-height:115%;font-size:10pt;"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;">http://weblogs.asp.net/fbouma/archive/2008/05/19/why-use-the-entity-framework-yeah-why-exactly.aspx</span></span></span></em></a><span style="color:#000000;"><span style="font-family:Calibri;"><em><span style="line-height:115%;font-size:10pt;"> if you want to read more on this.) </span></em><span style="font-size:small;">Let us believe MS for the benefit of the doubt and also for their good initiations in adapting and even contributing to few Open Source frameworks like jQuery.</span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">By the way the re-inventing issue also exists in the open source community itself. Check this website where Fluent NHibernate’s creator is ranting about the new mapping features in NH 3.2, </span><a href="http://lostechies.com/jamesgregory/2011/04/13/me-on-nhibernate-3-2/"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://lostechies.com/jamesgregory/2011/04/13/me-on-nhibernate-3-2/</span></span></a></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-family:Calibri;"><span style="font-size:small;"><span style="color:#000000;">The biggest problem is that there is no as such a certified independent vendor whose sole business is to continually compare various products in the market competing in the same domain space and label them with ratings and assurance to consumers.  <em>There you go! Great business idea if you haven’t already thought about this one before</em></span></span></span><em><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:wingdings;">J</span><span style="font-family:Calibri;">. </span></span></span></em></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">So you might be asking <strong>“How then do technology teams choose these tools</strong>?” Honestly decisions are mostly based on information gathered from the different blogs and articles on the internet hosting these technical debates. Microsoft seemed to understand this and has made MS Product Evangelism a main stream in their marketing strategy. That is also assisted by the MVP program which gets awarded to fellows who are active part of the Microsoft development community. </span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">At times these technical debates between tools, frameworks, languages that you find on the internet are more philosophical where one side of the group is already biased with their decision and just try to bring more points to prove to others their point of view. You see the same behavior in development teams where a developer keeps defending their tool suggestion regardless of the ideas that others are putting on the table. That makes the argument even more time consuming and zero value add to the business some times. Check out this article </span><a href="http://weblogs.asp.net/scottgu/archive/2010/01/24/about-technical-debates-both-in-general-and-regarding-asp-net-web-forms-and-asp-net-mvc-in-particular.aspx"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://weblogs.asp.net/scottgu/archive/2010/01/24/about-technical-debates-both-in-general-and-regarding-asp-net-web-forms-and-asp-net-mvc-in-particular.aspx</span></span></a><span style="color:#000000;font-family:Calibri;font-size:small;">, by Scott Guthrie if you haven’t already. </span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><em><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">I thought it is good to mention that one of the big advantages of Domain Driven Design is how it really allows you to solely focus on your domain model and treat everything else that doesn’t affect the business as infrastructure concern that can easily be plugged in or swapped any time with little or no-impact to the core domain. But you still need to responsibly choose the right tools for your infrastructure but it gives you the flexibility to change your decisions when you find it necessary. </span></span></span></em></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">In a project that I recently worked on we were following Domain Driven Design and NHibernate ORM framework was our choice for the persistence infrastructure layer. With Microsoft’s recent improvements to the Entity framework we thought it makes sense to take a second look at EF. Making feature to feature comparison would make absolute sense since we already know our “Must have” features that projects are currently using from NH.</span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><strong><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">EF and NH Architecture </span></span></span></strong></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"> <a href="http://temebele.files.wordpress.com/2011/06/image0011.png"><img class="alignnone size-medium wp-image-213" title="image001" src="http://temebele.files.wordpress.com/2011/06/image0011.png?w=300&#038;h=215" alt="" width="300" height="215" /></a> </span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">NH Architecture (http://knol.google.com/k/-/-/1nr4enxv3dpeq/jd6roh/lite.png<strong> </strong></span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-family:Calibri;font-size:x-small;"><a href="http://temebele.files.wordpress.com/2011/06/image0021.png"><img class="alignnone size-medium wp-image-214" title="image002" src="http://temebele.files.wordpress.com/2011/06/image0021.png?w=300&#038;h=196" alt="" width="300" height="196" /></a><br />
</span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">EF Architecture (http://i.msdn.microsoft.com/ff830362.fig02(en-us,MSDN.10).png) </span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><strong><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">So let’s begin by defining our Generic Repository and Unit of Work interface </span></span></span></strong></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>Note</strong>: <em>Eric Evan envisioned repositories in his DDD book as collection like interfaces where access is only possible through the aggregate root. But if you look at all the implementations of different ORMs, they delegate the loading of data (lazy and eager) to the Property accessor get methods. Thus until we have ORM that completely embodies the repository pattern we will be using generic repository. </em></span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="color:#000000;font-family:Calibri;font-size:small;">But we are aware that exposing a generic repository implementation to clients might cause problems since we don’t have control on how clients will be using the repositories. Hence our design was to have clients always go through domain services. The domain services in turn depend on the generic repository for persistence concerns.</span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">Actually personally I don’t really understand the need for custom repositories (on aggregate roots) because we are already using domain service to define business processes. As part of defining the business process I believe domain service could also serve as aggregate roots fo that respective domain.<strong> </strong></span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">Also if you are using a generic repository interface <strong>IRepository</strong>&lt;T&gt;, it means we need to create a new instance of the generic repository implementation for each type. So our choice was to just go with a non-generic repository, <strong>IRepository</strong>, and only make the methods generic.  </span></span></span></p>
<p class="MsoNormal" style="margin:0 0 10pt;"><em><span style="line-height:115%;font-size:10pt;"><span style="color:#000000;"><span style="font-family:Calibri;">Note: Another option would be to go with the generic repository and have a static generic class to access it. (That was Ayende’s implementation, IRepository&lt;T&gt; interface, which is accessible via the static Repository&lt;T&gt;, on Rhino commons which I didn’t like that much) </span></span></span></em></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Collections; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Collections.Generic; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Linq; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Linq.Expressions; </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">namespace</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> EFNHComparison.Core.Persistence </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">{ </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    </span><span style="color:blue;">public </span><span style="color:blue;">interface </span><span style="color:#2b91af;">IRepository</span> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    { </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        TEntity Get&lt;TEntity&gt;(</span><span style="color:blue;">object</span><span style="color:#000000;"> pk) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:#2b91af;">IQueryable</span><span style="color:#000000;">&lt;TEntity&gt; LoadAll&lt;TEntity&gt;() </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> Save&lt;TEntity&gt;(TEntity entity) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        TEntity SaveAndRefresh&lt;TEntity&gt;(TEntity entity) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> SaveAndCommit&lt;TEntity&gt;(TEntity entity) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> Delete&lt;TEntity&gt;(TEntity entity) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> DeleteAll&lt;TEntity&gt;() </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> DeleteAll&lt;TEntity&gt;(</span><span style="color:#2b91af;">IEnumerable</span><span style="color:#000000;">&lt;TEntity&gt; entityList) </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:#2b91af;">IEnumerable</span><span style="color:#000000;">&lt;TEntity&gt; Query&lt;TEntity&gt;(</span><span style="color:#2b91af;">Expression</span><span style="color:#000000;">&lt;</span><span style="color:#2b91af;">Func</span><span style="color:#000000;">&lt;TEntity, </span><span style="color:blue;">bool</span><span style="color:#000000;">&gt;&gt; expression) </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">            </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:blue;">class</span><span style="color:#000000;">, </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:#2b91af;">IQueryable</span><span style="color:#000000;">&lt;TEntity&gt; Query&lt;TEntity&gt;() </span><span style="color:blue;">where</span><span style="color:#000000;"> TEntity : </span><span style="color:#2b91af;">IDomainEntity</span><span style="color:#000000;">; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:#2b91af;">IList</span><span style="color:#000000;"> Query(</span><span style="color:blue;">string</span><span style="color:#000000;"> sqlText); </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">long</span><span style="color:#000000;"> Count(); </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    } </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">} </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">namespace</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> EFNHComparison.Core </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">{ </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    </span><span style="color:blue;">public</span><span style="color:blue;">interface</span><span style="color:#2b91af;">IDomainEntity</span> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    { </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    } </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">} </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">By defining an interface for Unit of work it will allow us to not be coupled with specific unit of work implementation of either of these frameworks. </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Collections.Generic; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Linq; </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">using</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> System.Text; </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;color:blue;font-size:9.5pt;">namespace</span><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;"> EFNHComparison.Core.Persistence </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">{ </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    </span><span style="color:blue;">public</span><span style="color:blue;">interface</span><span style="color:#2b91af;">IUnitOfWork</span><span style="color:#000000;">:</span><span style="color:#2b91af;">IDisposable</span> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    { </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> Init(); </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> Commit(); </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">        </span><span style="color:blue;">void</span><span style="color:#000000;"> RollBack(); </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">    } </span></span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="font-family:consolas;font-size:9.5pt;"><span style="color:#000000;">} </span></span></p>
<p><span style="color:#000000;"> </span></p>
<p><span style="color:#000000;"> </span></p>
<p><span style="color:#000000;"> </span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span style="color:#000000;font-family:Calibri;font-size:small;">Now we are going to start listing all the features we are currently using from NHibernate that we will be using for the features comparison with EF. Comparison is based on the EF4.1 Release version and NH 3.2</span></p>
<p class="MsoNormal" style="line-height:normal;margin:0;"><span class="Apple-style-span" style="font-family:Calibri;line-height:19px;font-size:small;"><a href="http://temebele.files.wordpress.com/2011/06/image0041.jpg"><img class="alignnone size-medium wp-image-215" title="image004" src="http://temebele.files.wordpress.com/2011/06/image0041.jpg?w=300&#038;h=187" alt="" width="300" height="187" /></a> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">1.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">POCO Support – </span></strong><span style="font-size:small;">With domain centric development, everything else should depend on the domain but no infrastructure concern should leak into the domain. So that makes POCO support a critical feature.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"> <strong> </strong></span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>NH:  </strong>This is a framework which was original built with POCO support and DDD concepts in mind. It has full support for POCO objects.<br />
<em>For Lazy loading, there is restriction to make the classes not sealed and also the lazy loaded properties as virtual. This was to allow Interception through Proxy. </em></span></span></span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><strong><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;">EF: </span></span></span></strong></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">Entity frameworks support for POCO has been improving from the previous releases. With EF 4.0, you first need to build the EDMX model and provide a CSDL/SSDL/MSL metadata first, then the framework can use your POCO entities. POCO Entity generator T4 templates can be used to generate code from the EDMX. <em>(You disable code generation on the EDMX so that it doesn’t generate the non-POCO persistence classes)</em> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">EF 4.1 code-first allows you to create your POCO entities and it dynamically generates the EDMX metadata. The normal approach in using Code First will be to hand code the entity classes first but it also works if you have existing database model.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">(Similar restrictions apply to the POCO classes to allow interception through Proxies).</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><a href="http://weblogs.asp.net/scottgu/archive/2010/08/03/using-ef-code-first-with-an-existing-database.aspx"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://weblogs.asp.net/scottgu/archive/2010/08/03/using-ef-code-first-with-an-existing-database.aspx</span></span></a></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><em><span style="font-size:small;"><span style="font-family:Calibri;"><span style="color:#000000;">Note: Currently there is no tool support to map the database model to the POCO classes. I am hoping that LLBLGen will start supporting that soon. If not I think you are better off using visual designer, data model first and then using the T4 generators to create the POCO classes. </span></span></span></em></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><strong><em><span style="font-size:small;"><span style="font-family:Calibri;"><span style="color:#000000;">(I believe MS argument is if want POCO classes then you better like hand coding the entities. But sometimes you may want to generate POCO from all existing data model and then start using custom POCO objects afterwards) </span></span></span></em></strong></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="font-family:Calibri;"><span style="color:#000000;"><strong><em>Issue</em></strong><em>: Every time you change the model, it requires you to drop and recreate the database. Even if you manually apply the changes both on the model and database it complains about model being different from database. So any data that was stored will be lost for every schema change (??) </em></span></span></span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">2.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Support for Data Model &#8211; First Development – </span></strong><span style="font-size:small;">With tools like LLBLGen and others there was also support to generated entities and mapping for existing data model with NH.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>NH:</strong> You can use generators like LLBLGen, Visual NHibernate or other tools to achieve this with N</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>EF:</strong> Great support using the visual designer.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><strong><span style="font-family:Calibri;font-size:small;">3.</span><span style="font:7pt &quot;">      </span></strong><span style="font-family:Calibri;"><strong><span style="font-size:small;">Support for Domain Model-First Development – </span></strong><span style="font-size:small;">NH supports generating and exporting schema information and queries to create database based on the domain model and mappings. Thus you can start development from the Model.</span></span></span><a name="_GoBack"></a><strong> </strong></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>NH: </strong>This is also achievable with tools like LLBLGen that allow model first but EF has better support with the visual designer.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>EF:</strong> Great<strong> </strong>Visual Studio designer support<strong> </strong></span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">4.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">All Basic Repository Implementations –</span></strong><span style="font-size:small;"> we should be able to implement and use all our generic repository operations that we are currently using with NH. EF has the same querying capabilities to perform those behaviors defined in the generic repostiory.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">5.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Mapping from conceptual model to the Storage model</span></strong><span style="font-size:small;"> – with Fluent NH, we were able to use code based configuration for our entity mappings. We had one mapping class per entity. There was also a flexibility to use hbm XML mapping in certain scenarios where there was no full supporte by the fluent mapping. </span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-size:small;"><span style="font-family:Calibri;">With EF 4.1 you pretty much don’t have to configure anything for Table per entity mappings as long as you following the conventions for naming your POCO class properties to match the table names. But if you want to split the table across multiple type or need to name the properties or classes different then you have to override the OnModelCreating method of DbContext.<br />
<em>Note: instead of lumping all custom configuration in a single DbContext class I prefer the approch of having sepate mapping classes per entity. I believe that is achievable with EF but haven’t looked into it yet.</em></span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#4f81bd;"><span style="font-family:Calibri;font-size:small;">6.</span><span style="font:7pt &quot;">      </span></span><span style="font-size:small;"><span style="font-family:Calibri;"><span style="color:#000000;"><strong>Lazy and Eager Loading </strong>– </span><span style="color:#4f81bd;">with NH lazy loading is a default. Eager loading is possible using Criteria APIs but not very intuitive. We want to see how this is done with EF. </span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#4f81bd;"><span style="font-size:small;"><span style="font-family:Calibri;">Also NH expects entity classes not to be sealed and have their properties as virtual so that it can use Proxies for Interception during lazy loading. We want to know how lazy loading is done using EF. (TODO: Need to look at EF) </span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">7.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Code Generation </span></strong><span style="font-size:small;">– with NH we were relying on LLBLGen’s designer tool to generate code both for the domain and mapping layers. The same support exists with with Visual Studio’s designer and T4 template support with EF.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">8.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Ability to add business logic to Generated Entities -  </span></strong><span style="font-size:small;">we just use the partial class C# feature to add more custom logic that we don’t want to be overwritten every time a new code is generated. The same can be applied in EF. Anyways in a pure POCO implementation we shouldn’t worry about Code-gen and overriding as the POCO classes represent the evolving model</span></span><span style="font-family:wingdings;"><span style="font-size:small;">J</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">9.</span><span style="font:7pt &quot;">      </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Ability to intercept or subscribe to ORM events to add more data (e.g. Audit information) </span></strong><span style="font-size:small;">– with NH we were able to easily add event listeners to intercept inserts and updates and add audit information to database.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">With EF you have to override OnSavingChanges in DBContext. NH way of using event listeners looks more intutive.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">10.</span><span style="font:7pt &quot;">   </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Ability to Cache data on a Session and Application Level – </span></strong><span style="font-size:small;">NH by default supports session level caching (First-Level cache) and it also has a support to plug in any caching implementation to be used for Application Level Caching (Second-Level Cache). Thus it avoids the need to create a custom caching layer between your data and services.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">EF doesn’t have second level caching support. NH contributor Ayende is working on a commerical product to extend EF with second-level caching, </span><a href="http://ayende.com/blog/4364/designing-the-entity-framework-2nd-level-cache"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://ayende.com/blog/4364/designing-the-entity-framework-2nd-level-cache</span></span></a></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">11.</span><span style="font:7pt &quot;">   </span><span style="font-family:Calibri;"><strong><span style="font-size:small;">Ability to use Query Cache on Demand –</span></strong><span style="font-size:small;"> with NH you can enable query caching and then set certain queries as cacheable.</span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">I haven’t see this with EF.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><strong><span style="font-family:Calibri;font-size:small;">12.</span><span style="font:7pt &quot;">   </span></strong><span style="font-family:Calibri;"><strong><span style="font-size:small;">Ability to Execute named queries – </span></strong><span style="font-size:small;">For our integration tests we were able to use HBM named query mappings to execute large data setup queries. <strong> </strong></span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">Same concept exists in EF as DefiningQuery, </span><a href="http://msdn.microsoft.com/en-us/library/bb738450%28VS.100%29.aspx"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://msdn.microsoft.com/en-us/library/bb738450%28VS.100%29.aspx</span></span></a></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><strong><span style="font-family:Calibri;font-size:small;">13.</span><span style="font:7pt &quot;">   </span></strong><strong><span style="font-size:small;"><span style="font-family:Calibri;">Logging and Traceability </span></span></strong></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><strong><span style="font-family:Calibri;font-size:small;">14.</span><span style="font:7pt &quot;">   </span></strong><strong><span style="font-size:small;"><span style="font-family:Calibri;">Testability </span></span></strong></span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><span style="color:#000000;"><strong><span style="font-family:Calibri;font-size:small;">15.</span><span style="font:7pt &quot;">   </span></strong><strong><span style="font-size:small;"><span style="font-family:Calibri;">Documentation and Support </span></span></strong></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">NH sucks big time when it comes to documentation. It looks like all the contributors prefer coding and not putting together documentation. The introduction of profiler tools like NHProfiler is making it easier to learn the internals of what the ORM is doing.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">EF being from Microsoft has lot of documentation, tutorials and books.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="text-indent:-.25in;margin:0 0 0 .5in;"><strong><span style="color:#000000;"><span style="font-family:Calibri;font-size:small;">16.</span><span style="font:7pt &quot;">   </span></span></strong><span style="font-size:small;"><span style="color:#000000;"><span style="font-family:Calibri;"><strong>Others<br />
</strong>NH doesn&#8217;t have a commercial foundation or a large developer base as other open source.<strong> </strong></span></span></span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">EF is supported by Microsoft.</span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">This was my comparison just based on features we are currently using. But there are many other features that are different between these two. I will to put together and share a sample application that uses the same Domain layer with POCO classes but separate data infrastructure implementation with NH and EF soon.</span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">Though these two frameworks are getting a lot closer with their feature sets and support for DDD, it looks like NH still has a little edge over EF both interms of maturity, extendability and some features like the caching support. Performance and other quality attributes will need more research and prototyping to be able to post any comparison.</span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><strong><span style="color:#000000;"><span style="font-size:small;"><span style="font-family:Calibri;">Read: </span></span></span></strong></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><a href="http://ayende.com/blog/archive/2010/01/05/nhibernate-vs.-entity-framework-4.0.aspx"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://ayende.com/blog/archive/2010/01/05/nhibernate-vs.-entity-framework-4.0.aspx</span></span></a></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p class="MsoListParagraphCxSpMiddle" style="margin:0 0 0 .5in;"><span style="color:#000000;font-family:Calibri;font-size:small;">Refer </span><a href="http://fabiomaulo.blogspot.com/2011/04/me-on-fluent-nhibernate.html"><span style="text-decoration:underline;"><span style="color:#0000ff;font-family:Calibri;font-size:small;">http://fabiomaulo.blogspot.com/2011/04/me-on-fluent-nhibernate.html</span></span></a><span style="color:#000000;font-family:Calibri;font-size:small;"> for the new Conform mapping with NHibernate 3.2</span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<p><span style="color:#000000;font-family:Calibri;font-size:small;"> </span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/201/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/201/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/201/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=201&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2011/06/06/entity-framework-vs-nhibernate-feature-by-feature-comparison/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2011/06/image0011.png?w=300" medium="image">
			<media:title type="html">image001</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2011/06/image0021.png?w=300" medium="image">
			<media:title type="html">image002</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2011/06/image0041.jpg?w=300" medium="image">
			<media:title type="html">image004</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET MVC Performance Issues with Render Partial</title>
		<link>http://temebele.wordpress.com/2011/02/12/asp-net-mvc-performance-issues-with-render-partial/</link>
		<comments>http://temebele.wordpress.com/2011/02/12/asp-net-mvc-performance-issues-with-render-partial/#comments</comments>
		<pubDate>Sat, 12 Feb 2011 02:33:04 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">https://temebele.wordpress.com/?p=192</guid>
		<description><![CDATA[We were working on optimization effort for a web application that we built recently. After we finished fixing up Select N+1, Caching and other NHibernate related ORM usage issues another thing popped out. Our profiler was actually showing a hot spot on loading partial views, System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String, Object). After doing some research I found this [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=192&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We were working on optimization effort for a web application that we built recently. After we finished fixing up Select N+1, Caching and other NHibernate related ORM usage issues another thing popped out. Our profiler was actually showing a hot spot on loading partial views, <strong>System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String, Object).</strong></p>
<p><strong><a href="http://temebele.files.wordpress.com/2011/02/renderpartialview.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;" title="RenderPartialView" border="0" alt="RenderPartialView" src="http://temebele.files.wordpress.com/2011/02/renderpartialview_thumb.png?w=609&#038;h=347" width="609" height="347" /></a></strong></p>
<p><font color="#000000">After doing some research I found this article by <span style="widows:2;text-transform:none;text-indent:0;border-collapse:separate;font:medium verdana, arial, helvetica, sans-serif;white-space:normal;orphans:2;letter-spacing:normal;color:rgb(204,204,204);word-spacing:0;" class="Apple-style-span"><span style="text-align:right;line-height:14px;font-size:11px;" class="Apple-style-span"><a style="color:rgb(255,128,0);text-decoration:none;" href="http://weblogs.asp.net/members/kazimanzurrashid.aspx">Kazi Manzur Rashid</a>. <font color="#000000" size="2">I recommend reading it,<a href="http://weblogs.asp.net/rashid/archive/2009/04/23/asp-net-mvc-view-location-and-performance-issue.aspx">http://weblogs.asp.net/rashid/archive/2009/04/23/asp-net-mvc-view-location-and-performance-issue.aspx</a></font></span></span></font><font color="#000000"><span style="widows:2;text-transform:none;text-indent:0;border-collapse:separate;font:medium verdana, arial, helvetica, sans-serif;white-space:normal;orphans:2;letter-spacing:normal;color:rgb(204,204,204);word-spacing:0;" class="Apple-style-span"><span style="text-align:right;line-height:14px;font-size:11px;" class="Apple-style-span"><font color="#000000" size="2"></font></span></span></font></p>
<p><font color="#000000"><span style="widows:2;text-transform:none;text-indent:0;border-collapse:separate;font:medium verdana, arial, helvetica, sans-serif;white-space:normal;orphans:2;letter-spacing:normal;color:rgb(204,204,204);word-spacing:0;" class="Apple-style-span"><span style="text-align:right;line-height:14px;font-size:11px;" class="Apple-style-span">&#160;<font size="2" face="Consolas"><font size="2" face="Consolas"></font>                     </font><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas">foreach</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas"> (</font></font><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas">var</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas"> viewEngine </font></font><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas">in</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas"> </font></font><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas">ViewEngines</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas">.Engines.OfType&lt;</font></font><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas">VirtualPathProviderViewEngine</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas">&gt;())</font>
<p>{</p>
<p>viewEngine.ViewLocationCache = </p>
<p>         </font><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas"><font color="#0000ff" size="2" face="Consolas">new</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas"> </font></font><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas">DefaultViewLocationCache</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas">(</font></font><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas"><font color="#2b91af" size="2" face="Consolas">TimeSpan</font></font></font><font size="2" face="Consolas"><font size="2" face="Consolas">.FromHours(24)); </font>
<p>}</p>
<p>Another solution will be to put the full path of the ascx file on RenderPartial instead of just the name.</p>
<p></p>
<p>         </font></span></span></font></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/192/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=192&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2011/02/12/asp-net-mvc-performance-issues-with-render-partial/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2011/02/renderpartialview_thumb.png" medium="image">
			<media:title type="html">RenderPartialView</media:title>
		</media:content>
	</item>
		<item>
		<title>Identity Providers</title>
		<link>http://temebele.wordpress.com/2010/12/14/identity-providers/</link>
		<comments>http://temebele.wordpress.com/2010/12/14/identity-providers/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 21:52:50 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">https://temebele.wordpress.com/2010/12/14/identity-providers/</guid>
		<description><![CDATA[Great article series on Identity Provider http://blogs.msdn.com/b/james_brown/archive/2009/04/01/eid-for-governments.aspx<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=188&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Great article series on Identity Provider</p>
<p><a href="http://blogs.msdn.com/b/james_brown/archive/2009/04/01/eid-for-governments.aspx"><u><font color="#0000ff">http://blogs.msdn.com/b/james_brown/archive/2009/04/01/eid-for-governments.aspx</font></u></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/188/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=188&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/12/14/identity-providers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>MS Chart not rendering on MVC 2 with .NET 4</title>
		<link>http://temebele.wordpress.com/2010/11/17/ms-chart-not-rendering-on-mvc-2-with-net-4/</link>
		<comments>http://temebele.wordpress.com/2010/11/17/ms-chart-not-rendering-on-mvc-2-with-net-4/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 22:50:49 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
				<category><![CDATA[.NET 4]]></category>
		<category><![CDATA[ASP.NET 4]]></category>
		<category><![CDATA[ASP.NET MVC 2]]></category>

		<guid isPermaLink="false">https://temebele.wordpress.com/?p=180</guid>
		<description><![CDATA[If you have been using ASP.NET 3.5 Charts, when upgrading to .NET 4 you will ran in to issues with the image source path for ChartImage.axd. Make sure you add the following to your Global.asax.cs Application_Start. RouteTable.Routes.Ignore(&#8220;{*pathInfo}&#8221;,new { pathInfo =@&#8221;^.*(ChartImg.axd)$&#8221; }); AreaRegistration.RegisterAllAreas(); RegisterRoutes(RouteTable.Routes); Note: the ignore route for ChartImage.axd needs to be before any area [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=180&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have been using ASP.NET 3.5 Charts, when upgrading to .NET 4 you will ran in to issues with the image source path for ChartImage.axd.</p>
<p>Make sure you add the following to your Global.asax.cs Application_Start.</p>
<p><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;">RouteTable</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">.Routes.Ignore(</span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">&#8220;{*pathInfo}&#8221;</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">,</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">new</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> { pathInfo =</span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">@&#8221;^.*(ChartImg.axd)$&#8221;</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> });<br />
</span></span><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;">AreaRegistration</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">.RegisterAllAreas();<br />
RegisterRoutes(</span></span><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;"><span style="color:#2b91af;font-family:Consolas;font-size:x-small;">RouteTable</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">.Routes);</span></span></p>
<p><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> </span></span><span style="font-size:x-small;">Note: the ignore route for ChartImage.axd needs to be before any area registration.<br />
</span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"></span></span></span></span></span></span></span></span></span></span></span></p>
<div id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:77167e66-6d5b-48c5-ac6a-ac5f00f5aba6" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">Technorati Tags: <a rel="tag" href="http://technorati.com/tags/.NET+4">.NET 4</a>,<a rel="tag" href="http://technorati.com/tags/ASP.NET+4">ASP.NET 4</a></span></span></span></span></span></span></span></span></span></span></span></span></div>
<p><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="font-size:x-small;"><br />
</span><span style="font-size:x-small;"><em>Web.Config Changes:</em></span></span></span></span></span></span></span></span></span></span></span></span></span></p>
<p><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">assemblies</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span>&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">add</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">assembly</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">/&gt;<br />
&lt;/</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">assemblies</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">controls</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">add</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">tagPrefix</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">asp</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">namespace</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">System.Web.UI.DataVisualization.Charting</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">assembly</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> /&gt;<br />
</span></span></span></span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;/</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">controls</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span></span></span></span>&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">httpHandlers&gt;<br />
</span></span></span>&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">add</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">path</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">ChartImg.axd</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">verb</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">GET,HEAD,POST</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">type</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">validate</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">false</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">/&gt;<br />
&lt;/</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">httpHandlers</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">system.webServer</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">handlers</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">remove</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">name</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">ChartImageHandler</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">/&gt;<br />
&lt;</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">add</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">name</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">ChartImageHandler</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">preCondition</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">integratedMode</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">verb</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">GET,HEAD,POST</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">path</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">ChartImg.axd</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"> </span></span></span><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;"><span style="color:#ff0000;font-family:Consolas;font-size:x-small;">type</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">=</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="color:#000000;font-family:Consolas;font-size:x-small;">&#8220;</span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">/&gt;<br />
&lt;/</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">handlers</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;<br />
&lt;/</span></span></span><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;"><span style="color:#a31515;font-family:Consolas;font-size:x-small;">system.webServer</span></span></span><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;">&gt;</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></p>
<p><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"><span style="color:#0000ff;font-family:Consolas;font-size:x-small;"></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></p>
<div>
<pre class="csharpcode"></pre>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/180/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/180/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/180/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=180&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/11/17/ms-chart-not-rendering-on-mvc-2-with-net-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>Typical DDD Implementation with ASP.NET MVC 2 and NHibernate (call it MVCDN stack :))</title>
		<link>http://temebele.wordpress.com/2010/08/15/typical-ddd-implementation-with-asp-net-mvc-2-and-nhibernate-call-it-mvcdn-stack/</link>
		<comments>http://temebele.wordpress.com/2010/08/15/typical-ddd-implementation-with-asp-net-mvc-2-and-nhibernate-call-it-mvcdn-stack/#comments</comments>
		<pubDate>Sun, 15 Aug 2010 14:47:04 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">https://temebele.wordpress.com/2010/08/15/typical-ddd-implementation-with-asp-net-mvc-2-and-nhibernate-call-it-mvcdn-stack/</guid>
		<description><![CDATA[Architecture Overview Instead of the traditional top-down solution layering approach, we will be using a hexagonal or onion layering architecture that promotes domain-driven software design. Refer to Jeff Palermo’s technical blog to learn more about the Onion Architecture. The basic idea is that all couplings are toward the centre. That way you can completely replace [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=175&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Architecture Overview</p>
<p>Instead of the traditional top-down solution layering approach, we will be using a hexagonal or onion layering architecture that promotes domain-driven software design. Refer to Jeff Palermo’s technical blog to learn more about the Onion Architecture. The basic idea is that all couplings are toward the centre. That way you can completely replace the skin of the onion (i.e. UI and Infrastructure implementations) without affecting the core domain. But any change to the domain affects all layers, thus making the design and implementation domain centric.</p>
<p>&#160;<a href="http://temebele.files.wordpress.com/2010/08/mvcdnstack2.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="MVCDN stack" border="0" alt="MVCDN stack" src="http://temebele.files.wordpress.com/2010/08/mvcdnstack_thumb1.png?w=656&#038;h=506" width="656" height="506" /></a><br />
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="130"></td>
</tr>
<tr>
<td><a href="http://temebele.files.wordpress.com/2010/08/mvcdnstack3.png"></a></td>
<td>&#160;</td>
</tr>
</tbody>
</table>
<p>   <a href="http://temebele.files.wordpress.com/2010/08/image.png"><img style="display:inline;border-width:0;" title="image" border="0" alt="image" src="http://temebele.files.wordpress.com/2010/08/image_thumb.png?w=646&#038;h=634" width="646" height="634" /></a> </p>
<p><strong>Typical Framework libraries and Tools</strong></p>
<p><strong>Code Generation and Designer Tool</strong></p>
<p>- <strong>LLBL Gen Pro v3.0</strong> &#8211; <a href="http://llblgen.com/defaultgeneric.aspx">http://llblgen.com/defaultgeneric.aspx</a></p>
<p>The new LLBL Designer supports NHibernate, EF 4, L2S &amp; LLBL itself. It is a wonderful designer and code generation tool.</p>
<p><strong><u>Presentation Layer</u></strong></p>
<p>- <strong>ASP.NET MVC 2 </strong></p>
<p>- <strong>jQuery v1.4.2</strong> – <a href="http://jquery.com">http://jquery.com</a></p>
<p>- <strong>jQuery UI Plug-ins</strong> – <a href="http://jqueryui.com">http://jqueryui.com</a></p>
<p>- <strong>AutoMapper</strong> &#8211; <a href="http://automapper.codeplex.com/">http://automapper.codeplex.com/</a></p>
<p>- <strong>TinyMCE</strong> – <a href="http://tinymce.moxiecode.com">http://tinymce.moxiecode.com</a></p>
<p>- <strong>Telerik ASP.NET MVC Extensions</strong> &#8211; <a href="http://www.telerik.com/products/aspnet-mvc.aspx">http://www.telerik.com/products/aspnet-mvc.aspx</a></p>
<p><strong><u>Dependency Injection</u></strong></p>
<p><strong>Autofac </strong>– <a href="http://code.google.com/autofac">http://code.google.com/autofac</a></p>
<p><strong><u>OR/M</u></strong></p>
<p>- <strong>NHibernate</strong> &#8211; <a href="http://nhforge.org/Default.aspx">http://nhforge.org/Default.aspx</a></p>
<p>- <strong>Fluent Nhibernate</strong> &#8211; <a href="http://fluentnhibernate.org/">http://fluentnhibernate.org/</a></p>
<p><strong><u>Refactoring and Code Analysis</u></strong></p>
<p>- <strong>ReSharper</strong> &#8211; <a href="http://www.jetbrains.com/resharper/">http://www.jetbrains.com/resharper/</a></p>
<p>- <strong>FxCop</strong> &#8211; <a href="http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx">http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx</a></p>
<p><strong><u>Unit testing Controllers</u></strong></p>
<p>- <strong>Moq</strong> &#8211; <a href="http://code.google.com/p/moq/">http://code.google.com/p/moq/</a> &#8211; mocking framework</p>
<p>- <strong>NUnit</strong> &#8211; <a href="http://www.nunit.org/">http://www.nunit.org/</a></p>
<p><strong><u>Continuous Integration Build</u></strong></p>
<p>- <strong>Cruise Control.NET</strong> &#8211; <a href="http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET">http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET</a></p>
<p><strong>Services</strong></p>
<p>- <strong><u>WCF Rest Services</u></strong> &#8211; <a href="http://msdn.microsoft.com/en-us/netframework/cc950529.aspx">http://msdn.microsoft.com/en-us/netframework/cc950529.aspx</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/175/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/175/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/175/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=175&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/08/15/typical-ddd-implementation-with-asp-net-mvc-2-and-nhibernate-call-it-mvcdn-stack/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2010/08/mvcdnstack_thumb1.png" medium="image">
			<media:title type="html">MVCDN stack</media:title>
		</media:content>

		<media:content url="http://temebele.files.wordpress.com/2010/08/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>LLBLGen Pro V 3.0 Designer&#8217;s support for NHibernate (Model classes and fluent mappings)</title>
		<link>http://temebele.wordpress.com/2010/06/16/llblgen-pro-v-3-0-designers-support-for-nhibernate-and-fluent-mappings/</link>
		<comments>http://temebele.wordpress.com/2010/06/16/llblgen-pro-v-3-0-designers-support-for-nhibernate-and-fluent-mappings/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 04:14:55 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">http://temebele.wordpress.com/?p=164</guid>
		<description><![CDATA[coming soon.. http://weblogs.asp.net/fbouma/archive/2010/05/29/llblgen-pro-v3-0-has-been-released.aspx<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=164&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>coming soon..</p>
<p><a href="http://weblogs.asp.net/fbouma/archive/2010/05/29/llblgen-pro-v3-0-has-been-released.aspx">http://weblogs.asp.net/fbouma/archive/2010/05/29/llblgen-pro-v3-0-has-been-released.aspx</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/164/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/164/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/164/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=164&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/06/16/llblgen-pro-v-3-0-designers-support-for-nhibernate-and-fluent-mappings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>Visual Studio 2010   RELEASED TODAY YAY!!</title>
		<link>http://temebele.wordpress.com/2010/04/12/visual-studio-2010-released-today-yay/</link>
		<comments>http://temebele.wordpress.com/2010/04/12/visual-studio-2010-released-today-yay/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 17:56:46 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">http://temebele.wordpress.com/2010/04/12/visual-studio-2010-released-today-yay/</guid>
		<description><![CDATA[Download Trial<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=163&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.microsoft.com/visualstudio/en-us/download">Download Trial</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/163/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=163&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/04/12/visual-studio-2010-released-today-yay/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET Web Site vs Web Application Project types</title>
		<link>http://temebele.wordpress.com/2010/03/25/asp-net-web-site-vs-web-application-project-types/</link>
		<comments>http://temebele.wordpress.com/2010/03/25/asp-net-web-site-vs-web-application-project-types/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 00:36:57 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">http://temebele.wordpress.com/?p=156</guid>
		<description><![CDATA[Today I came across one advantage of Web site projects that has never crossed my mind before. I was helping a client that did have  source control and were not sure if they have the latest production code on their development environment. Unless you pull and bits and pieces from production server there was no way [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=156&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today I came across one advantage of Web site projects that has never crossed my mind before.</p>
<p>I was helping a client that did have  source control and were not sure if they have the latest production code on their development environment. Unless you pull and bits and pieces from production server there was no way to get the full latest code that is currently running in Production.</p>
<p>Web site projects come so handy on this case because you only need to worry about one file at a time.<br />
Every page is compiled into it&#8217;s own assembly. So for emergency fixes you can still fix just that single file and deploy it without worrying about the full source code.</p>
<p>I thought how big a mess it would have been if there was need to compile into a single assembly and redeploy to their production environment and thought I would share.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/156/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/156/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/156/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=156&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/03/25/asp-net-web-site-vs-web-application-project-types/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET MVC 2 Released</title>
		<link>http://temebele.wordpress.com/2010/03/12/asp-net-mvc-2-released/</link>
		<comments>http://temebele.wordpress.com/2010/03/12/asp-net-mvc-2-released/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 14:46:17 +0000</pubDate>
		<dc:creator>temebele</dc:creator>
		
		<guid isPermaLink="false">http://temebele.wordpress.com/?p=152</guid>
		<description><![CDATA[ASP.NET MVC 2 Released Scott Hanselman ASP.NET MVC 2 Released Scott Gu<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=152&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.hanselman.com/blog/ASPNETMVC2Released.aspx?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+ScottHanselman+%28Scott+Hanselman+-+ComputerZen.com%29">ASP.NET MVC 2 Released Scott Hanselman<br />
</a><br />
<a href="http://weblogs.asp.net/scottgu/archive/2010/03/11/asp-net-mvc-2-released.aspx">ASP.NET MVC 2 Released Scott Gu</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/temebele.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/temebele.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/temebele.wordpress.com/152/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=temebele.wordpress.com&amp;blog=6291592&amp;post=152&amp;subd=temebele&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://temebele.wordpress.com/2010/03/12/asp-net-mvc-2-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3897d64eb6b69ce0014de13de1036b66?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">temebele</media:title>
		</media:content>
	</item>
	</channel>
</rss>
