<?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: Why you should not place your whole site in an UpdatePanel</title>
	<atom:link href="http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/feed/" rel="self" type="application/rss+xml" />
	<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/</link>
	<description>ASP.NET and AJAX code, ideas, and examples.</description>
	<lastBuildDate>Wed, 10 Mar 2010 23:47:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: John</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-36127</link>
		<dc:creator>John</dc:creator>
		<pubDate>Mon, 10 Aug 2009 21:18:12 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-36127</guid>
		<description>Just a thought, but when talking about the source control and having 1 person lock everyone else in a single page site... that is true, and a problem.. however, couldn&#039;t that easily be circumvented by the main page being the navigation or sorts and the actual content of the single page app being comprised of individual user controls that they could be checked out as needed in a multi-developer environment?</description>
		<content:encoded><![CDATA[<p>Just a thought, but when talking about the source control and having 1 person lock everyone else in a single page site&#8230; that is true, and a problem.. however, couldn&#8217;t that easily be circumvented by the main page being the navigation or sorts and the actual content of the single page app being comprised of individual user controls that they could be checked out as needed in a multi-developer environment?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Ward</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-33737</link>
		<dc:creator>Dave Ward</dc:creator>
		<pubDate>Sat, 03 Jan 2009 04:46:21 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-33737</guid>
		<description>I wouldn&#039;t use it for navigation.</description>
		<content:encoded><![CDATA[<p>I wouldn&#8217;t use it for navigation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sam</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-33735</link>
		<dc:creator>sam</dc:creator>
		<pubDate>Sat, 03 Jan 2009 03:56:16 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-33735</guid>
		<description>You said:  So how should you do it instead? Iframes. Itâ€™s that simple.

What are your thoughts on uframes:
http://www.codeplex.com/UFrame


Thanks,

Sam</description>
		<content:encoded><![CDATA[<p>You said:  So how should you do it instead? Iframes. Itâ€™s that simple.</p>
<p>What are your thoughts on uframes:<br />
<a href="http://www.codeplex.com/UFrame" rel="nofollow">http://www.codeplex.com/UFrame</a></p>
<p>Thanks,</p>
<p>Sam</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shalan</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-32888</link>
		<dc:creator>Shalan</dc:creator>
		<pubDate>Tue, 28 Oct 2008 08:25:57 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-32888</guid>
		<description>I have seen this in action on some popular local websites in my country, where the navigation and css loads first and a nice loading gif shows in the centre whilst the page content is being fetched. If i search their site in Google for specific content, the results still show. But I agree with you...I rather have my content indexed.

Yes, the content can be cached and it is for a public facing site. Its actually for the main content block of my CMS. Im basically doing a select query based on the querystring (viz url rewriting) and binding the result to a literal control. I just thought that I could load the rest of my page, and then load this content last.

I&#039;m not sure where I heard this, but I&#039;m led to believe that providing alternative pages purely for bots is a no-no.

rgdz</description>
		<content:encoded><![CDATA[<p>I have seen this in action on some popular local websites in my country, where the navigation and css loads first and a nice loading gif shows in the centre whilst the page content is being fetched. If i search their site in Google for specific content, the results still show. But I agree with you&#8230;I rather have my content indexed.</p>
<p>Yes, the content can be cached and it is for a public facing site. Its actually for the main content block of my CMS. Im basically doing a select query based on the querystring (viz url rewriting) and binding the result to a literal control. I just thought that I could load the rest of my page, and then load this content last.</p>
<p>I&#8217;m not sure where I heard this, but I&#8217;m led to believe that providing alternative pages purely for bots is a no-no.</p>
<p>rgdz</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Ward</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-32665</link>
		<dc:creator>Dave Ward</dc:creator>
		<pubDate>Tue, 21 Oct 2008 17:05:50 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-32665</guid>
		<description>A page method or web service will have the same issues with SEO.

For public facing sites, where SEO is important, you should generally avoid locking content in AJAX functionality.  Use it to progressively enhance the UI, but not as the foundation of the UI.

In your case, is the delay loaded content something that can be cached instead?

If not, an alternative is to use user-agent sniffing to deliver a static page only to the spiders.</description>
		<content:encoded><![CDATA[<p>A page method or web service will have the same issues with SEO.</p>
<p>For public facing sites, where SEO is important, you should generally avoid locking content in AJAX functionality.  Use it to progressively enhance the UI, but not as the foundation of the UI.</p>
<p>In your case, is the delay loaded content something that can be cached instead?</p>
<p>If not, an alternative is to use user-agent sniffing to deliver a static page only to the spiders.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shalan</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-32658</link>
		<dc:creator>Shalan</dc:creator>
		<pubDate>Tue, 21 Oct 2008 12:24:52 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-32658</guid>
		<description>Great, insigthful article!

One question though...I had no idea about content in an updatePanel not beign able to be indexed by crawlers!! I have on one of my sites an UpdatePanel that contains the main bulk of that page&#039;s text (stored in DB). I am delay-loading this so that the rest of the page loads first and fast, and I display a nice loading image to the user.

What would you recommend be an alternative to achieving this without using Updatepanel?? would the same SEO concerns arise if I use a Page Method instead?

rgdz</description>
		<content:encoded><![CDATA[<p>Great, insigthful article!</p>
<p>One question though&#8230;I had no idea about content in an updatePanel not beign able to be indexed by crawlers!! I have on one of my sites an UpdatePanel that contains the main bulk of that page&#8217;s text (stored in DB). I am delay-loading this so that the rest of the page loads first and fast, and I display a nice loading image to the user.</p>
<p>What would you recommend be an alternative to achieving this without using Updatepanel?? would the same SEO concerns arise if I use a Page Method instead?</p>
<p>rgdz</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Ward</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-32060</link>
		<dc:creator>Dave Ward</dc:creator>
		<pubDate>Fri, 29 Aug 2008 12:59:18 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-32060</guid>
		<description>Just the content for the UpdatePanel is correct.  In a partial postback, you should see a pipe (&#124;) delimited string that includes the rendered HTML for the UpdatePanel&#039;s &lt;div&gt;, which UpdatePanel(s) are to be updated, JavaScript registered through the ScriptManager, etc.</description>
		<content:encoded><![CDATA[<p>Just the content for the UpdatePanel is correct.  In a partial postback, you should see a pipe (|) delimited string that includes the rendered HTML for the UpdatePanel&#8217;s &lt;div&gt;, which UpdatePanel(s) are to be updated, JavaScript registered through the ScriptManager, etc.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josh</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-32048</link>
		<dc:creator>Josh</dc:creator>
		<pubDate>Thu, 28 Aug 2008 14:22:09 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-32048</guid>
		<description>can you explain more about this? I have been wondering this myself, looking at firebug, under net, it shows the full page again in its original form, but under console I see just the content for the update panel... which is really happening, and why does firebug show the full html page if it&#039;s only supposed to be getting the updated content?</description>
		<content:encoded><![CDATA[<p>can you explain more about this? I have been wondering this myself, looking at firebug, under net, it shows the full page again in its original form, but under console I see just the content for the update panel&#8230; which is really happening, and why does firebug show the full html page if it&#8217;s only supposed to be getting the updated content?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ø³ÛŒØªÙ… ÙˆØ¨ Ú©Ù†Ù?Ø±Ø§Ù†Ø³</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-31281</link>
		<dc:creator>Ø³ÛŒØªÙ… ÙˆØ¨ Ú©Ù†Ù?Ø±Ø§Ù†Ø³</dc:creator>
		<pubDate>Wed, 02 Jul 2008 10:34:22 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-31281</guid>
		<description>i try to place my controls in several update panels.is it somehow better?
i now that using trigger is better but it requires many thinking and i am somehow lazy! ;)</description>
		<content:encoded><![CDATA[<p>i try to place my controls in several update panels.is it somehow better?<br />
i now that using trigger is better but it requires many thinking and i am somehow lazy! ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Slava</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-22939</link>
		<dc:creator>Slava</dc:creator>
		<pubDate>Thu, 08 May 2008 14:15:36 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-22939</guid>
		<description>Sorry, achieve, not archive :)</description>
		<content:encoded><![CDATA[<p>Sorry, achieve, not archive :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-22930</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 08 May 2008 13:37:10 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-22930</guid>
		<description>&quot;but you have to write all your controls in javascript which must take a lot longer to do&quot;

Totally agree. The point of Javascript JSON WebMethod is to archive the functionality of true AJAX application, not a simulation like with UpdatePanel :). BUT! And that &quot;BUT&quot; is the cornerstone. It would be a real nightmare to built manually the Javascript AJAX UI library by hand. Everyone I know decided to use Javascript AJAX libraries available now even for free, such as ExtJS, wich is FULL of any UI elements you might ever need to built your app. So what would be the reason for me to choose ASP.NET AJAX via WebServices?</description>
		<content:encoded><![CDATA[<p>&#8220;but you have to write all your controls in javascript which must take a lot longer to do&#8221;</p>
<p>Totally agree. The point of Javascript JSON WebMethod is to archive the functionality of true AJAX application, not a simulation like with UpdatePanel :). BUT! And that &#8220;BUT&#8221; is the cornerstone. It would be a real nightmare to built manually the Javascript AJAX UI library by hand. Everyone I know decided to use Javascript AJAX libraries available now even for free, such as ExtJS, wich is FULL of any UI elements you might ever need to built your app. So what would be the reason for me to choose ASP.NET AJAX via WebServices?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rune</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-22611</link>
		<dc:creator>Rune</dc:creator>
		<pubDate>Tue, 06 May 2008 23:08:28 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-22611</guid>
		<description>I agree with you that updatepanel is not a great solution from a performance og user experience point of view. However, it seem to solve the problem of maintaining a &quot;temporary&quot; version of larger forms while at the same time doing constraint checks in the database. This could of course be handled by a javascript/webmethod combination, but then you loose the advantages of managed code. 

On the other hand it does almost take your breath away when you see the complete javascript-json-webmethod combination used to the fullest like the controls from... componentart (I think they&#039;re called). The performance is almost desktop-like but you have to write all your controls in javascript which must take a lot longer to do.</description>
		<content:encoded><![CDATA[<p>I agree with you that updatepanel is not a great solution from a performance og user experience point of view. However, it seem to solve the problem of maintaining a &#8220;temporary&#8221; version of larger forms while at the same time doing constraint checks in the database. This could of course be handled by a javascript/webmethod combination, but then you loose the advantages of managed code. </p>
<p>On the other hand it does almost take your breath away when you see the complete javascript-json-webmethod combination used to the fullest like the controls from&#8230; componentart (I think they&#8217;re called). The performance is almost desktop-like but you have to write all your controls in javascript which must take a lot longer to do.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eye On .NET - Hisham Elbreky</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-21896</link>
		<dc:creator>Eye On .NET - Hisham Elbreky</dc:creator>
		<pubDate>Sat, 03 May 2008 09:15:47 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-21896</guid>
		<description>[...] Why you should not place your whole site in an UpdatePanel [...]</description>
		<content:encoded><![CDATA[<p>[...] Why you should not place your whole site in an UpdatePanel [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dave Ward</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-21041</link>
		<dc:creator>Dave Ward</dc:creator>
		<pubDate>Tue, 29 Apr 2008 19:29:06 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-21041</guid>
		<description>Make sure you&#039;re looking at the console tab.  If you expand a partial postback&#039;s POST entry there, you should see a request that&#039;s very similar to a regular postback and then a response that&#039;s a pipe delimited string intended for the PageRequestManager.  

If you&#039;re seeing a response of the entire page&#039;s HTML, you&#039;re seeing a regular postback&#039;s response (or the response from a GET).</description>
		<content:encoded><![CDATA[<p>Make sure you&#8217;re looking at the console tab.  If you expand a partial postback&#8217;s POST entry there, you should see a request that&#8217;s very similar to a regular postback and then a response that&#8217;s a pipe delimited string intended for the PageRequestManager.  </p>
<p>If you&#8217;re seeing a response of the entire page&#8217;s HTML, you&#8217;re seeing a regular postback&#8217;s response (or the response from a GET).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Slava</title>
		<link>http://encosia.com/2008/04/23/why-you-should-not-place-your-whole-site-in-an-updatepanel/#comment-21040</link>
		<dc:creator>Slava</dc:creator>
		<pubDate>Tue, 29 Apr 2008 19:20:59 +0000</pubDate>
		<guid isPermaLink="false">http://encosia.com/?p=74#comment-21040</guid>
		<description>Strange... but what I see in the Firebug&#039;s Response tab is the content of the entire page! not just the content of UpdatePanel. What&#039;s the point to sent the HTML content + VIEWSTATE of the entire page, if the callback was initiated only from the UpdatePanel? 

Basically what I see when debugging the app using Firebug is that the whole page&#039;s content is submitted and returned!! back when using UpdatePanel, + the VIEWSTATE.

Maybe it&#039;s something wrong with the Firebug :) ?</description>
		<content:encoded><![CDATA[<p>Strange&#8230; but what I see in the Firebug&#8217;s Response tab is the content of the entire page! not just the content of UpdatePanel. What&#8217;s the point to sent the HTML content + VIEWSTATE of the entire page, if the callback was initiated only from the UpdatePanel? </p>
<p>Basically what I see when debugging the app using Firebug is that the whole page&#8217;s content is submitted and returned!! back when using UpdatePanel, + the VIEWSTATE.</p>
<p>Maybe it&#8217;s something wrong with the Firebug :) ?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
