<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Rajeesh's Blog</title>
	
	<link>http://www.rajeeshcv.com</link>
	<description>Sharing my knowledge</description>
	<pubDate>Tue, 28 Oct 2008 16:55:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/RajeeshBlog" type="application/rss+xml" /><feedburner:emailServiceId>2063639</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><item>
		<title>ASP.NET AJAX - Passing JSON object from client to server</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/433871657/</link>
		<comments>http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 18:39:15 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[asp.net ajax json pagemethods]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/</guid>
		<description><![CDATA[Passing JSON object from client to server]]></description>
			<content:encoded><![CDATA[<ol>
<li><a title="calling server side methods from client side" href="http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/" target="_blank">Part 1- Calling server side methods from client side</a> </li>
</ol>
<p>Read the Part 1 of this tutorial if you don&#8217;t know how to call server side methods directly from client side.</p>
<p>In this post, I will explain how to pass data from client to server in JSON format.</p>
<p>Microsoft AJAX client library has built-in methods which helps in serializing and de-serializing JSON. The methods are defined in &quot;<strong>Sys.Serialization.JavaScriptSerializer</strong>&quot; class. In server side we have &quot;<strong>JavaScriptSerializer</strong>&quot;that will help you out to do the JSON serialization and de-serialization.</p>
<p><span id="more-78"></span></p>
<p>With the help of these two classes, we can easily do the data transfer. Suppose you have class called <strong>&quot;Customer&quot;</strong> in server side, which looks like this</p>
<pre class="c-sharp" name="code">
using System;

namespace ServerClientInteration
{
    [Serializable]
    public class Customer
    {
        public int ID { get; set; }

        public string Name { get; set; }

        public string Address { get; set; }
    }
}</pre>
<p>This is our payload for this example, we are going to move this object from server to client and vice versa. For that I have exposed two static methods on the server side; one is for retrieving the customer details and the other is for updating the customer.</p>
<pre class="c-sharp" name="code">
  public partial class _Default : System.Web.UI.Page
    {
        private static Customer customer = null;

        protected void Page_Load(object sender, EventArgs e)
        {
            if (customer == null)
            {
                customer = new Customer();
                customer.ID = 1;
                customer.Name = &quot;microsoft&quot;;
                customer.Address = &quot;www.microsoft.com&quot;;
            }

        }

        [WebMethod]
        [ScriptMethod(UseHttpGet=true)]
        public static string GetTime()
        {
            return DateTime.Now.ToLongTimeString();
        }

        [WebMethod]
        [ScriptMethod(UseHttpGet = true)]
        public static string GetCustomer()
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(customer);
        }

        [WebMethod]
        [ScriptMethod]
        public static string UpdateCustomer(string jsonCustomer)
        {
            try
            {
                JavaScriptSerializer serializer = new JavaScriptSerializer();
                Customer cust = serializer.Deserialize<customer>(jsonCustomer);
                customer.ID = cust.ID;
                customer.Name = cust.Name;
                customer.Address = cust.Address;

                return &quot;Updated&quot;;
            }
            catch(Exception Exception)
            {

            }

            return &quot;Error occured while updating&quot;;
        }
    }</pre>
<p>In the above code, you can see &quot;<strong>GetCustomer</strong>&quot; and &quot;<strong>UpdateCustomer</strong>&quot; methods. &quot;<strong>GetCustomer</strong>&quot; will serialize the static customer object and return it as JSON string; &quot;<strong>UpdateCustomer</strong>&quot; method accepts JSON string as input and that string is de-serialized in to a customer object and the static customer variable is updated with the new values. &quot;<strong>UpdateCustomer</strong>&quot; will return status message after the update.</p>
<p>Usually, we persist the customer in DB or some other states, but here for simplicity I have used a static variable which will simulate the persistence.</p>
<p>Now we need to call this from the client-side, for that I have two hyperlinks; one will get the customer from the server and other send the customer to the server.</p>
<p>Here is how the HTML looks like</p>
<pre class="html" name="code">
&lt;head runat=&quot;server&quot;&gt;
&lt;title&gt;Untitled Page&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt; 

#result
{
width: 250px;
height: 300px;
overflow: auto;
border:1px solid #00d;
} 

&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;form id=&quot;form1&quot; runat=&quot;server&quot;&gt;
&lt;asp:ScriptManager ID=&quot;ScriptManager1&quot; runat=&quot;server&quot; EnablePageMethods=&quot;true&quot;&gt;
&lt;/asp:ScriptManager&gt;
&lt;div&gt;
&lt;a href=&quot;javascript:callServerMethod()&quot; &gt;Call Server method&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;javascript:getCustomer()&quot; &gt;Get Customer&lt;/a&gt;
&lt;div id=&quot;result&quot;&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;div&gt;
ID : &lt;input type=&quot;text&quot; id=&quot;custID&quot; /&gt;&lt;br /&gt;
Name : &lt;input type=&quot;text&quot; id=&quot;custName&quot; /&gt;&lt;br /&gt;
Adress : &lt;input type=&quot;text&quot; id=&quot;custAdd&quot; /&gt;&lt;br /&gt;
&lt;/div&gt;
&lt;a href=&quot;javascript:updateCustomer()&quot; &gt;Update customer&lt;/a&gt;&lt;br /&gt; 

&lt;/div&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;
//&lt;![CDATA[ 

function callServerMethod()
{
PageMethods.GetTime(callBackMethod);
} 

function callBackMethod(result)
{
alert(result);
} 

function getCustomer()
{
PageMethods.GetCustomer(callBackGetCustomer);
} 

function callBackGetCustomer(result)
{
var customer = Sys.Serialization.JavaScriptSerializer.deserialize(result);
var content = &quot;&lt;br /&gt;ID :&quot; +  customer.ID + &quot;&lt;br /&gt;&quot; + &quot;Name : &quot; + customer.Name + &quot;&lt;br /&gt;&quot; + &quot;Address : &quot; + customer.Address;
$get(&quot;result&quot;).innerHTML += content;
} 

var clientCustomer = function(id,name,add){
this.ID = id;
this.Name = name;
this.Address = add;
}; 

function updateCustomer()
{
var id = $get(&quot;custID&quot;).value;
var name = $get(&quot;custName&quot;).value;
var address = $get(&quot;custAdd&quot;).value; 

var customer = new clientCustomer(id,name,address);
var serializedCustomer = Sys.Serialization.JavaScriptSerializer.serialize(customer);
PageMethods.UpdateCustomer(serializedCustomer,callBackUpdateCustomer);
} 

function callBackUpdateCustomer(result)
{
alert(result);
} 

//]]&gt;
&lt;/script&gt;
&lt;/form&gt;
&lt;/body&gt;</pre>
<p>I think the above code is self explanatory, let me know if you have any difficulty in understanding this.</p>
<p>Hope this will gave some idea about passing JSON between client and server. I have uploaded the source code in my server and you can get it from here - <a href="http://www.rajeeshcv.com/download/ServerClientInteration.zip">http://www.rajeeshcv.com/download/ServerClientInteration.zip</a></p>
<div class="wlWriterSmartContent" id="scid:C16BAC14-9A3D-4c50-9394-FBFEF7A93539:bd873e8b-d1f1-463c-a8ed-d3c0733e6590" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"><a href="http://www.dotnetkicks.com/kick/?url=http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/" border="0" alt="kick it on DotNetKicks.com" /></a></div>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=ee7PiA"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=ee7PiA" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/10/aspnet-ajax-passing-json-object-from-client-to-server/</feedburner:origLink></item>
		<item>
		<title>ASP.NET AJAX - Calling server side methods from client side</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/431019901/</link>
		<comments>http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 19:13:52 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[ajax]]></category>

		<category><![CDATA[asp.net ajax]]></category>

		<category><![CDATA[client side method]]></category>

		<category><![CDATA[PageMethods]]></category>

		<category><![CDATA[server side methods]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/</guid>
		<description><![CDATA[Calling server side methods from client side - an asp.net AJAX technique]]></description>
			<content:encoded><![CDATA[<p>ASP.net AJAX has got nice bridging between your server side and client side technologies. Using the ASP.net AJAX you can easily call a method in a page. The restriction here is that, the methods your are trying to call should be static and public.</p>
<p>This feature(calling server side static method) is not enabled by default, so you have to manually enable this and it is very very simple; just set the &quot;<strong>EnablePageMethods</strong>&quot; property of the &quot;<strong>ScriptManager</strong>&quot; to <strong>true</strong> like this</p>
<p><span id="more-77"></span></p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<pre class="html" name="code">&lt;asp:scriptmanager id=&quot;ScriptManager1&quot; runat=&quot;server&quot; enablepagemethods=&quot;true&quot;&gt;&#160;&#160;&#160;&#160;&#160; &lt;/asp:scriptmanager&gt;</pre>
</p>
<p>After this, create a public static method in your asp.net page and decorate it with WebMethod(System.Web.Services.dll) and ScriptMethod(System.Web.Extensions.dll) attributes. For example I have created a static method called &quot;<strong>GetTime()</strong>&quot; which returns current time as string.</p>
</p>
<pre class="c-sharp" name="code">
public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        [WebMethod]
        [ScriptMethod]
        public static string GetTime()
        {
            return DateTime.Now.ToLongTimeString();
        }
    }  </pre>
</p>
<p>Now you have configured everything correctly and I will show you how to call this method from the client side.</p>
<p>Earlier you have set the &quot;<strong>EnablePageMethods</strong>&quot; property of &quot;<strong>ScriptManager</strong>&quot; to <strong>true</strong>, as a result of that a new object called &quot;<strong>PageMethods</strong>&quot; is created by the <strong>ScriptManager</strong> when the page is rendered. This object has all the public static methods in that page. So that you call the server side method like <strong>PageMethods.[ServerSideMethodName]</strong>. When calling this methods from client side you have to provide a callback function because here all the call scriptmanager made will be asynchronous, and this callback method will get the returned result.</p>
<p>Below is the sample code </p>
</p>
<pre class="javascript" name="code">
	function callServerMethod()
        {
            PageMethods.GetTime(callBackMethod);
        }

        function callBackMethod(result)
        {
            alert(result);
        }</pre>
<p>Complete aspx page looks like this </p>
<pre class="html" name="code">
&lt;body&gt;&#160;&#160;&#160;&#160; &lt;form id=&quot;form1&quot; runat=&quot;server&quot;&gt;&#160;&#160;&#160;&#160;&#160;&#160; &lt;asp:ScriptManager ID=&quot;ScriptManager1&quot; runat=&quot;server&quot; EnablePageMethods=&quot;true&quot;&gt;&#160;&#160;&#160;&#160;&#160; &lt;/asp:ScriptManager&gt;&#160;&#160;&#160;&#160;&#160; &lt;div&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;a href=&quot;javascript:callServerMethod()&quot; &gt;Call Server method&lt;/a&gt;&#160;&#160;&#160;&#160;&#160; &lt;/div&gt;&#160;&#160;&#160;&#160;&#160; &lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;&#160;&#160;&#160;&#160;&#160; //&lt;![CDATA[&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; function callServerMethod()&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; PageMethods.GetTime(callBackMethod);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; function callBackMethod(result)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; {&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; alert(result);&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }&#160;&#160;&#160;&#160;&#160; //]]&gt;&#160;&#160;&#160;&#160;&#160; &lt;/script&gt;&#160;&#160;&#160;&#160;&#160; &lt;/form&gt;
&lt;/body&gt;</pre>
</p>
<p><strong><u>Extra bits</u></strong></p>
<p>In the above code you can see that I have placed link, when user click on that link a message is shown with the server time. So behind an asynchronous request is send to the server in this format (<strong><a href="http://[sitename]/[MethodName">http://[sitename]/[MethodName</a></strong><strong>]</strong>). Server in turn returns the result as JSON back to the client. Here is a screen shot from the firebug</p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="384" alt="image" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image-thumb.png" width="422" border="0" /></a> </p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image1.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="121" alt="image" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image-thumb1.png" width="342" border="0" /></a></p>
<p>There is optimization we have do here - you can see that, by default the request is a <strong>POST</strong> request, but in our case a POST request is heavy because we could have achieved the same using a <strong>GET</strong> request ( <a href="http://www.cs.tut.fi/~jkorpela/forms/methods.html" target="_blank">Difference between POST and GET</a> ). </p>
<p></p>
<p>In order to change this request in to a <strong>GET</strong> request, we need to do a minor tweaking in the server side, set &quot;<strong>UseHttpGet=true</strong>&quot; parameter for the &quot;<strong>ScriptMethod</strong>&quot; attribute.</p>
<pre class="c-sharp" name="code">
	[WebMethod]
        [ScriptMethod(UseHttpGet=true)]
        public static string GetTime()
        {
            return DateTime.Now.ToLongTimeString();
        }</pre>
<p>After this you can see that, request is changed to a <strong>GET </strong>request</p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image2.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="355" alt="image" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/image-thumb2.png" width="385" border="0" /></a></p>
<div class="wlWriterSmartContent" id="scid:C16BAC14-9A3D-4c50-9394-FBFEF7A93539:9c3bb28b-7aaf-4bce-a9b0-a850fec8227a" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"><a href="http://www.dotnetkicks.com/kick/?url=http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/" border="0" alt="kick it on DotNetKicks.com" /></a></div>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=0wQCOX"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=0wQCOX" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/10/aspnet-ajax-calling-server-side-methods-from-client-side/</feedburner:origLink></item>
		<item>
		<title>Photosynth - Nothing is impossible</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/430939847/</link>
		<comments>http://www.rajeeshcv.com/2008/10/photosynth-nothing-is-impossible/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 17:38:40 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Personal]]></category>

		<category><![CDATA[photosynth]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/2008/10/photosynth-nothing-is-impossible/</guid>
		<description><![CDATA[Yesterday one of my colleague showed me one of the coolest tool on web - Photosynth
You can share or relive a vacation destination or explore a distant museum or landmark. With nothing more than a digital camera and some inspiration, you can use Photosynth to transform regular digital photos into a three-dimensional, 360-degree experience. Anybody [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday one of my colleague showed me one of the coolest tool on web - <a href="http://photosynth.net" target="_blank">Photosynth</a></p>
<blockquote><p>You can share or relive a vacation destination or explore a distant museum or landmark. With nothing more than a digital camera and some inspiration, you can use Photosynth to transform regular digital photos into a three-dimensional, 360-degree experience. Anybody who sees your synth is put right in your shoes, sharing in your experience, with detail, clarity and scope impossible to achieve in conventional photos or videos.</p>
<p>- photosynth.com </p>
</blockquote>
<p></p>
<p>Below is one of the synth I liked most, you have to install a plugin to view this</p>
<p><iframe src="http://photosynth.net/embed.aspx?cid=7baa4f1a-893d-4e15-b6e6-526399e2752a" frameborder="0" width="400" height="300"></iframe></p>
<p>Note: this plugin doesn&#8217;t support google chrome <img src='http://www.rajeeshcv.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=AYl69C"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=AYl69C" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/10/photosynth-nothing-is-impossible/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/10/photosynth-nothing-is-impossible/</feedburner:origLink></item>
		<item>
		<title>Silverlight 2 released</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/421695316/</link>
		<comments>http://www.rajeeshcv.com/2008/10/silverlight-2-released/#comments</comments>
		<pubDate>Wed, 15 Oct 2008 15:47:03 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Siliverlight]]></category>

		<category><![CDATA[Silverlight 2]]></category>

		<category><![CDATA[silverlight released]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/2008/10/silverlight-2-released/</guid>
		<description><![CDATA[
Silverlight 2 is out now with new features like rich set of controls, improved Text Rendering capabilities, rich networking support including calling secured(SSL) services etc&#8230;
Moreover Microsoft is partnered with Soyatec to sponsor tools for developing Silverlight applications using cross platform Eclipse development platform. eclipse2SL is first of that kind.
eclipse2SL is an open source tools integrated [...]]]></description>
			<content:encoded><![CDATA[<p>
<p>Silverlight 2 is out now with new features like rich set of controls, improved Text Rendering capabilities, rich networking support including calling secured(SSL) services etc&#8230;</p>
<p>Moreover Microsoft is partnered with <a href="http://www.soyatec.com" target="_blank">Soyatec</a> to sponsor tools for developing Silverlight applications using cross platform Eclipse development platform. <a href="http://www.eclipse4sl.org/" target="_blank">eclipse2SL</a> is first of that kind.</p>
<p><a href="http://www.eclipse4sl.org/" target="_blank">eclipse2SL</a> is an open source tools integrated with the Eclipse development platform that enable Java developers to use the Eclipse platform to create applications that run on the Microsoft Silverlight runtime platform. Specifically, the project will be an Eclipse plug-in that works with the Eclipse Integrated Development Environment (IDE) and Eclipse Rich Client Platform (RCP) to provide both a Silverlight development environment and greater interoperability between Silverlight and Java, to facilitate the integration of Silverlight-based applications into Java-based web sites and services.</p>
<p>&#160;</p>
<p><span id="more-69"></span></p>
<p>As an addition to the control set Microsoft is releasing Silverlight Toolkit by end of this month with more UI controls.</p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/controlsppct-4-thumb.jpg"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="385" alt="Silverlight 2  toolkit" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/controlsppct-4-thumb-thumb.jpg" width="406" border="0" /></a> </p>
<p><strong><u>Silverlight 2 resources        </p>
<p></u></strong>To get the basic understanding go to <a href="http://silverlight.net/GetStarted/" target="_blank">Get started</a></p>
<p>And here are some good articles written by Scott Guthrie</p>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-2-end-to-end-tutorial-building-a-digg-search-client.aspx">Part 0: Introduction</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-1-creating-quot-hello-world-quot-with-silverlight-2-and-vs-2008.aspx">Part 1: Creating &quot;Hello World&quot; with Silverlight 2 and VS 2008</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-2-using-layout-management.aspx">Part 2: Using Layout Management</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-3-using-networking-to-retrieve-data-and-populate-a-datagrid.aspx">Part 3: Using Networking to Retrieve Data and Populate a DataGrid</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-4-using-style-elements-to-better-encapsulate-look-and-feel.aspx">Part 4: Using Style Elements to Better Encapsulate Look and Feel</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-5-using-the-listbox-and-databinding-to-display-list-data.aspx">Part 5: Using the ListBox and DataBinding to Display List Data</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-6-using-user-controls-to-implement-master-detail-scenarios.aspx">Part 6: Using User Controls to Implement Master/Details Scenarios</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-7-using-control-templates-to-customize-a-control-s-look-and-feel.aspx">Part 7: Using Templates to Customize Control Look and Feel</a> </li>
<li><a href="http://weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-8-creating-a-digg-desktop-application-using-wpf.aspx">Part 8: Creating a Digg Desktop Version of our Application using WPF</a>
</p>
</li>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=78NWf9"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=78NWf9" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/10/silverlight-2-released/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/10/silverlight-2-released/</feedburner:origLink></item>
		<item>
		<title>Google Chrome not rendering the checkboxes properly</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/412090423/</link>
		<comments>http://www.rajeeshcv.com/2008/10/google-chrome-not-rendering-the-checkboxes-properly/#comments</comments>
		<pubDate>Sun, 05 Oct 2008 18:37:23 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[Google chrome]]></category>

		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/2008/10/google-chrome-not-rendering-the-checkboxes-properly/</guid>
		<description><![CDATA[ Google chrome(0.2.149.30) has got some problem in rendering the checkboxes. Today I thought about buying a new laptop, so I was searching for a laptop that will fit into my budget and requirements. And I came across a website called http://www.compareindia.com/products/laptops/ , I was using Google chrome for browsing, but when viewed that page [...]]]></description>
			<content:encoded><![CDATA[<p> Google chrome(0.2.149.30) has got some problem in rendering the checkboxes. Today I thought about buying a new laptop, so I was searching for a laptop that will fit into my budget and requirements. And I came across a website called <a title="http://www.compareindia.com/products/laptops/" href="http://www.compareindia.com/products/laptops/" target="_blank">http://www.compareindia.com/products/laptops/</a> , I was using Google chrome for browsing, but when viewed that page it was like this </p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/chrome.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="314" alt="Chrome" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/chrome-thumb.png" width="504" border="0" /></a> </p>
<p>&#160;</p>
<p><span id="more-66"></span></p>
<p>There was no way for me&#160; to <strong>narrow my search</strong> because I couldn&#8217;t select any of options listed under &quot;<strong>Narrow your&#160; Search</strong>&quot; section, but after sometime i.e after doing some scrolling and switching tabs checkboxes appeared on the left side of this list</p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/afterscrollingandswitchingtabs.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="282" alt="AfterScrollingandswitchingTabs" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/afterscrollingandswitchingtabs-thumb.png" width="504" border="0" /></a></p>
<p> 
<p>Initially I thought that, it will a problem with the way that page was developed(may be some JavaScript issues), but when I opened the same page in Firefox(3.0.1) it was rendering properly, even in IE 6 is rendered that page correctly.</p>
<p><a href="http://www.rajeeshcv.com/wp-content/uploads/2008/10/ff.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="272" alt="FF" src="http://www.rajeeshcv.com/wp-content/uploads/2008/10/ff-thumb.png" width="504" border="0" /></a>&#160; I think this is a Chrome bug; I have reported this , follow this URL <a href="http://code.google.com/p/chromium/issues/detail?id=3151" target="_blank">http://code.google.com/p/chromium/issues/detail?id=3151</a> if you have experienced same problem.</p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=Yd9221"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=Yd9221" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/10/google-chrome-not-rendering-the-checkboxes-properly/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/10/google-chrome-not-rendering-the-checkboxes-properly/</feedburner:origLink></item>
		<item>
		<title>JQuery in asp.net</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/406530544/</link>
		<comments>http://www.rajeeshcv.com/2008/09/jquery-in-aspnet/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 19:17:47 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[JQuery]]></category>

		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/?p=59</guid>
		<description><![CDATA[A good news for the  JQuery lovers like me; Scott Guthrie anounced that JQuery will be shipped along with Visual Studio and Microsoft is planning to use this excellent javascript library in their future control release.
]]></description>
			<content:encoded><![CDATA[<p>A good news for the  <a href="http://www.jquery.com" target="_blank">JQuery</a> lovers like me; <a href="http://weblogs.asp.net/scottgu" target="_blank"><span style="font-family: Arial; font-size: x-small;">Scott Guthrie</span></a> anounced that JQuery will be shipped along with Visual Studio and Microsoft is planning to use this excellent javascript library in their future control release.</p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=JrV6bW"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=JrV6bW" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/09/jquery-in-aspnet/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/09/jquery-in-aspnet/</feedburner:origLink></item>
		<item>
		<title>“Server Error” in asp.net official website</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/404786934/</link>
		<comments>http://www.rajeeshcv.com/2008/09/server-error-in-aspnet-official-website/#comments</comments>
		<pubDate>Sat, 27 Sep 2008 16:57:33 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[General]]></category>

		<category><![CDATA[Google chrome]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/?p=57</guid>
		<description><![CDATA[Today I opened  asp.net official website www.asp.net in Google chrome and this was the response&#8230;..  


But the site is working very well in IE6 and firefox 
]]></description>
			<content:encoded><![CDATA[<p>Today I opened  asp.net official website <a href="http://www.asp.net/" target="_blank">www.asp.net</a> in <a href="http://www.google.com/chrome" target="_blank">Google chrome</a> and this was the response&#8230;.. <img src='http://www.rajeeshcv.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p><a href='http://www.rajeeshcv.com/wp-content/uploads/2008/09/aspnetsite.gif'><img src="http://www.rajeeshcv.com/wp-content/uploads/2008/09/aspnetsite.gif" alt="" title="aspnetsite" width="500" height="219" class="alignnone size-full wp-image-58" /></a></p>
<p></p>
<p>But the site is working very well in IE6 and firefox <img src='http://www.rajeeshcv.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=B9OicP"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=B9OicP" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/09/server-error-in-aspnet-official-website/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/09/server-error-in-aspnet-official-website/</feedburner:origLink></item>
		<item>
		<title>LayoutManager  - custom control for asp.net</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/400000883/</link>
		<comments>http://www.rajeeshcv.com/2008/09/layoutmanager-custom-control-for-aspnet/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 17:52:36 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[Opensource project]]></category>

		<category><![CDATA[custom control]]></category>

		<category><![CDATA[LayoutManager]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/?p=56</guid>
		<description><![CDATA[I have created an asp.net custom control on top of my JQuery Plugin, with good design time support. So that you don’t need to write any lines code.
Get more details from here http://code.google.com/p/weblayoutmanager/
Please let me know your suggestions
]]></description>
			<content:encoded><![CDATA[<p>I have created an asp.net custom control on top of my JQuery Plugin, with good design time support. So that you don’t need to write any lines code.</p>
<p>Get more details from here <a href="http://code.google.com/p/weblayoutmanager/" target="_blank">http://code.google.com/p/weblayoutmanager/</a></p>
<p>Please let me know your suggestions</p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=Cexqfb"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=Cexqfb" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/09/layoutmanager-custom-control-for-aspnet/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/09/layoutmanager-custom-control-for-aspnet/</feedburner:origLink></item>
		<item>
		<title>LayoutManger plugin - documenation and demos</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/394461594/</link>
		<comments>http://www.rajeeshcv.com/2008/09/layoutmanger-plugin-documenation-and-demos/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 19:02:36 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[Opensource project]]></category>

		<category><![CDATA[JQuery Plugin]]></category>

		<category><![CDATA[LayoutManager plugin]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/?p=55</guid>
		<description><![CDATA[I have created a separate page for this plugin with documentation and demos.
Please go to  http://www.rajeeshcv.com/projects/layoutmanager-jquery-plugin/ to read more about this plugin and how to use it.
]]></description>
			<content:encoded><![CDATA[<p>I have created a separate page for this plugin with documentation and demos.</p>
<p>Please go to  <a href="http://www.rajeeshcv.com/projects/layoutmanager-jquery-plugin/">http://www.rajeeshcv.com/projects/layoutmanager-jquery-plugin/</a> to read more about this plugin and how to use it.</p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=RrsUFS"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=RrsUFS" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/09/layoutmanger-plugin-documenation-and-demos/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/09/layoutmanger-plugin-documenation-and-demos/</feedburner:origLink></item>
		<item>
		<title>Google Syntax highlighter test</title>
		<link>http://feeds.feedburner.com/~r/RajeeshBlog/~3/394265923/</link>
		<comments>http://www.rajeeshcv.com/2008/09/google-syntax-highlighter-test/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 14:54:21 +0000</pubDate>
		<dc:creator>Rajeesh</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Google syntax highlighter]]></category>

		<category><![CDATA[Wordpress plugin]]></category>

		<guid isPermaLink="false">http://www.rajeeshcv.com/?p=51</guid>
		<description><![CDATA[Testing Google syntax highlighter plugin&#8230;

public override object EditValue(System.ComponentModel.ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            if (provider != null)
            {
        [...]]]></description>
			<content:encoded><![CDATA[<p>Testing Google syntax highlighter plugin&#8230;</p>
<pre name="code" class="c-sharp">
public override object EditValue(System.ComponentModel.ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            if (provider != null)
            {
                editorService = provider.GetService(typeof(IWindowsFormsEditorService)) as IWindowsFormsEditorService;
            }

            if (editorService != null)
            {
                DockableItemCollection items = value as DockableItemCollection;
                if (items == null)
                {
                    items = new DockableItemCollection();
                }
                DockableCollectionEditor itemEditor = new DockableCollectionEditor(items, editorService);
                editorService.ShowDialog(itemEditor);
                value = itemEditor.Items;
                context.OnComponentChanged();
            }

            return value;
        }
</pre>
<p>I hope the above sample code is highlighted and formatted properly</p>

<p><a href="http://feeds.feedburner.com/~a/RajeeshBlog?a=gZFktC"><img src="http://feeds.feedburner.com/~a/RajeeshBlog?i=gZFktC" border="0"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.rajeeshcv.com/2008/09/google-syntax-highlighter-test/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.rajeeshcv.com/2008/09/google-syntax-highlighter-test/</feedburner:origLink></item>
	<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetFeedData?uri=RajeeshBlog</feedburner:awareness></channel>
</rss>
