<?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: Using serialized JSON to move complex data to and from the browser</title>
	<atom:link href="http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/feed/" rel="self" type="application/rss+xml" />
	<link>http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/</link>
	<description></description>
	<lastBuildDate>Mon, 15 Mar 2010 17:35:57 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Tjerk</title>
		<link>http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/comment-page-1/#comment-50810</link>
		<dc:creator>Tjerk</dc:creator>
		<pubDate>Mon, 30 Nov 2009 21:25:28 +0000</pubDate>
		<guid isPermaLink="false">http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/#comment-50810</guid>
		<description>You could take this even further and place the whole view layer (UI logic and events etc.) on the client and have the server just pass data back and forth. Some have named this &#039;SOFEA&#039; or &#039;SOUI&#039;, others &#039;client-server 2&#039;, for example see http://www.it-eye.nl/weblog/2008/09/24/what-is-client-server-20/</description>
		<content:encoded><![CDATA[<p>You could take this even further and place the whole view layer (UI logic and events etc.) on the client and have the server just pass data back and forth. Some have named this &#8216;SOFEA&#8217; or &#8216;SOUI&#8217;, others &#8216;client-server 2&#8242;, for example see <a href="http://www.it-eye.nl/weblog/2008/09/24/what-is-client-server-20/" rel="nofollow">http://www.it-eye.nl/weblog/2008/09/24/what-is-client-server-20/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jarod Ferguson</title>
		<link>http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/comment-page-1/#comment-50670</link>
		<dc:creator>Jarod Ferguson</dc:creator>
		<pubDate>Wed, 25 Nov 2009 08:07:20 +0000</pubDate>
		<guid isPermaLink="false">http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/#comment-50670</guid>
		<description>@chris

I dont think Jason was calling $.ajax here. The main point, which may have been missed was:

&quot;I am sensitive about the number of calls being made (which I was here)&quot;

The idea is to load the page with the JSON you know you will need in a hidden field during the initial webrequest. In this case you do not want to use $.getJSON.

In doing so, you can keep the client logic in javascript/json instead of duplicating logic on the client in js   on the server in c#. A simple example might be adding/removing items from a list. 

Its sorta kinda but not really like viewstate.... its a hidden payload, only for client data storage. On the server your only responsibility is change tracking what happened on the client.</description>
		<content:encoded><![CDATA[<p>@chris</p>
<p>I dont think Jason was calling $.ajax here. The main point, which may have been missed was:</p>
<p>&#8220;I am sensitive about the number of calls being made (which I was here)&#8221;</p>
<p>The idea is to load the page with the JSON you know you will need in a hidden field during the initial webrequest. In this case you do not want to use $.getJSON.</p>
<p>In doing so, you can keep the client logic in javascript/json instead of duplicating logic on the client in js   on the server in c#. A simple example might be adding/removing items from a list. </p>
<p>Its sorta kinda but not really like viewstate&#8230;. its a hidden payload, only for client data storage. On the server your only responsibility is change tracking what happened on the client.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason Grundy</title>
		<link>http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/comment-page-1/#comment-50131</link>
		<dc:creator>Jason Grundy</dc:creator>
		<pubDate>Sat, 07 Nov 2009 00:46:01 +0000</pubDate>
		<guid isPermaLink="false">http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/#comment-50131</guid>
		<description>&lt;a href=&quot;#comment-50130&quot; rel=&quot;nofollow&quot;&gt;@Chris Brandsma&lt;/a&gt; 
I definitely agree Chris although here I was referring to AJAX as a technique rather than as a JQuery method. I&#039;ll be more clear next time ;)</description>
		<content:encoded><![CDATA[<p><a href="#comment-50130" rel="nofollow">@Chris Brandsma</a><br />
I definitely agree Chris although here I was referring to AJAX as a technique rather than as a JQuery method. I&#8217;ll be more clear next time <img src='http://elegantcode.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Brandsma</title>
		<link>http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/comment-page-1/#comment-50130</link>
		<dc:creator>Chris Brandsma</dc:creator>
		<pubDate>Fri, 06 Nov 2009 23:42:05 +0000</pubDate>
		<guid isPermaLink="false">http://elegantcode.com/2009/11/06/using-serialized-json-to-move-complex-data-to-and-from-the-browser/#comment-50130</guid>
		<description>You need to move to using $.getJSON or $.post(url, data, success, &quot;json&quot;) instead of calling $.ajax.  Then you can get rid of most of the toJSON stuff.</description>
		<content:encoded><![CDATA[<p>You need to move to using $.getJSON or $.post(url, data, success, &#8220;json&#8221;) instead of calling $.ajax.  Then you can get rid of most of the toJSON stuff.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
