<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Performance differences in the ASP.Net MVC View Engine when using two View Engines versus a single Composite View Engine.</title>
	<atom:link href="http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/feed/" rel="self" type="application/rss+xml" />
	<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/</link>
	<description></description>
	<lastBuildDate>Thu, 16 May 2013 09:01:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
	<item>
		<title>By: erichexter</title>
		<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/#comment-190</link>
		<dc:creator>erichexter</dc:creator>
		<pubDate>Fri, 19 Jun 2009 18:50:53 +0000</pubDate>
		<guid isPermaLink="false">/blogs/hex/archive/2009/06/18/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine.aspx#comment-190</guid>
		<description>@David, in that case than it seems .. for now.. a composition based View Engine is the best approach, as I have discovered by persistence.  Thanks for the clarification.</description>
		<content:encoded><![CDATA[<p>@David, in that case than it seems .. for now.. a composition based View Engine is the best approach, as I have discovered by persistence.  Thanks for the clarification.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Ebbo</title>
		<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/#comment-189</link>
		<dc:creator>David Ebbo</dc:creator>
		<pubDate>Fri, 19 Jun 2009 18:35:02 +0000</pubDate>
		<guid isPermaLink="false">/blogs/hex/archive/2009/06/18/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine.aspx#comment-189</guid>
		<description>Eric, the trick is to start VS without debugging (Ctrl-F5), and later attach to the process (Ctrl-Alt-P).

Frankly, I hate that MVC changes its caching behavior based on the debug flag.  It should be a separately controlled thing.  I&#039;ll ask the team to fix that in the next version.</description>
		<content:encoded><![CDATA[<p>Eric, the trick is to start VS without debugging (Ctrl-F5), and later attach to the process (Ctrl-Alt-P).</p>
<p>Frankly, I hate that MVC changes its caching behavior based on the debug flag.  It should be a separately controlled thing.  I&#8217;ll ask the team to fix that in the next version.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: erichexter</title>
		<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/#comment-188</link>
		<dc:creator>erichexter</dc:creator>
		<pubDate>Fri, 19 Jun 2009 15:35:41 +0000</pubDate>
		<guid isPermaLink="false">/blogs/hex/archive/2009/06/18/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine.aspx#comment-188</guid>
		<description>@Victor, The single view engine is acting as a composite through inheritance. 

@David, In order to attach the debugger don&#039;t you have to take the debug=&quot;false&quot; out of the web.config?  If so than the Caching is turned off and as a result the &quot;more performant&quot; path for the code is not executed. So I guess the next thing to try is to pull down the source for MVC 1.0 make a change to the force the cache to work in debug=true to determine if the exceptions are the problem or the querying of each viewEngine in cache is causing the degradation of performance.</description>
		<content:encoded><![CDATA[<p>@Victor, The single view engine is acting as a composite through inheritance. </p>
<p>@David, In order to attach the debugger don&#8217;t you have to take the debug=&#8221;false&#8221; out of the web.config?  If so than the Caching is turned off and as a result the &#8220;more performant&#8221; path for the code is not executed. So I guess the next thing to try is to pull down the source for MVC 1.0 make a change to the force the cache to work in debug=true to determine if the exceptions are the problem or the querying of each viewEngine in cache is causing the degradation of performance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor Kornov</title>
		<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/#comment-187</link>
		<dc:creator>Victor Kornov</dc:creator>
		<pubDate>Fri, 19 Jun 2009 14:31:54 +0000</pubDate>
		<guid isPermaLink="false">/blogs/hex/archive/2009/06/18/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine.aspx#comment-187</guid>
		<description>Hey Eric,

have you tried to use one composite view negine instead of 2 separate? I.e. you build a vieww engine that delegates to the appropriate web forms or your own InputBuilderViewEngine.</description>
		<content:encoded><![CDATA[<p>Hey Eric,</p>
<p>have you tried to use one composite view negine instead of 2 separate? I.e. you build a vieww engine that delegates to the appropriate web forms or your own InputBuilderViewEngine.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Ebbo</title>
		<link>http://lostechies.com/erichexter/2009/06/19/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine/#comment-186</link>
		<dc:creator>David Ebbo</dc:creator>
		<pubDate>Fri, 19 Jun 2009 04:17:59 +0000</pubDate>
		<guid isPermaLink="false">/blogs/hex/archive/2009/06/18/performance-differences-in-the-asp-net-mvc-view-engine-when-using-two-view-engines-versus-a-single-composite-view-engine.aspx#comment-186</guid>
		<description>Eric, I&#039;m almost sure that the issue is what I mentioned by email.  When you use multiple view engines, the caching in the primary view engine gets disabled (which I think is an MVC bug).  Hence on every request, it tries a bunch of lookups before finding your view.  You can see this easily in the debugger, by breaking on all exceptions (and disabling Just My Code).  With single engine, you won’t get any exceptions (after the first request, which warms up the cache).  With double engine, you’ll get:
- The file &#039;/Views/Home/DateTime.aspx&#039; does not exist.
- The file &#039;/Views/Home/DateTime.ascx&#039; does not exist.
- The file &#039;/Views/Shared/DateTime.aspx&#039; does not exist.
- The file &#039;/Views/Shared/DateTime.ascx&#039; does not exist.
- The file &#039;/Views/Home/DatePicker.aspx&#039; does not exist.
- etc…
</description>
		<content:encoded><![CDATA[<p>Eric, I&#8217;m almost sure that the issue is what I mentioned by email.  When you use multiple view engines, the caching in the primary view engine gets disabled (which I think is an MVC bug).  Hence on every request, it tries a bunch of lookups before finding your view.  You can see this easily in the debugger, by breaking on all exceptions (and disabling Just My Code).  With single engine, you won’t get any exceptions (after the first request, which warms up the cache).  With double engine, you’ll get:<br />
- The file &#8216;/Views/Home/DateTime.aspx&#8217; does not exist.<br />
- The file &#8216;/Views/Home/DateTime.ascx&#8217; does not exist.<br />
- The file &#8216;/Views/Shared/DateTime.aspx&#8217; does not exist.<br />
- The file &#8216;/Views/Shared/DateTime.ascx&#8217; does not exist.<br />
- The file &#8216;/Views/Home/DatePicker.aspx&#8217; does not exist.<br />
- etc…</p>
]]></content:encoded>
	</item>
</channel>
</rss>
