<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2736933194933501699</id><updated>2012-02-02T01:39:25.026-06:00</updated><category term='C#'/><category term='LINQ'/><category term='MOSS'/><category term='WCF'/><category term='Zune'/><category term='WPF'/><category term='Azure'/><category term='VS.NET'/><category term='OData'/><category term='Silverlight'/><title type='text'>Bytes Matters</title><subtitle type='html'>Bytes Matters</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default?start-index=101&amp;max-results=100'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>256</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3638264217829978117</id><published>2011-06-22T23:51:00.001-05:00</published><updated>2011-06-22T23:51:46.949-05:00</updated><title type='text'>Windows Azure AppFabric SDK CTP – June Update</title><content type='html'>&lt;p&gt;Today MS announced the Windows Azure AppFabric. &lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/download/en/details.aspx?id=17691" href="http://www.microsoft.com/download/en/details.aspx?id=17691"&gt;http://www.microsoft.com/download/en/details.aspx?id=17691&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-F5GQjLJKjb8/TgLGYHwDNdI/AAAAAAAACkE/KJGeHrttJ5E/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-aR9vWL1eRME/TgLGYvXa_9I/AAAAAAAACkI/ERg3hZJF7G4/image_thumb%25255B1%25255D.png?imgmax=800" width="1022" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3638264217829978117?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3638264217829978117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3638264217829978117' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3638264217829978117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3638264217829978117'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/windows-azure-appfabric-sdk-ctp-june.html' title='Windows Azure AppFabric SDK CTP – June Update'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-aR9vWL1eRME/TgLGYvXa_9I/AAAAAAAACkI/ERg3hZJF7G4/s72-c/image_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3956069573321050439</id><published>2011-06-17T22:46:00.001-05:00</published><updated>2011-06-17T22:46:57.912-05:00</updated><title type='text'>Windows Azure 30 Days Pass- Try it out</title><content type='html'>&lt;p&gt;IF you want to try out Microsoft Windows Azure Application Development &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-cAN-klHA5fU/Tfwfrk40dCI/AAAAAAAACj8/ENlmpT1AeaE/s1600-h/image%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-L1yPFRJsALI/TfwfsVo5rQI/AAAAAAAACkA/k429eU3uO6k/image_thumb%25255B2%25255D.png?imgmax=800" width="1028" height="648" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsazurepass.com/?campid=56742C47-F0FB-DF11-B2EA-001F29C6FB82"&gt;http://windowsazurepass.com/?campid=56742C47-F0FB-DF11-B2EA-001F29C6FB82&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3956069573321050439?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3956069573321050439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3956069573321050439' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3956069573321050439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3956069573321050439'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/windows-azure-30-days-pass-try-it-out.html' title='Windows Azure 30 Days Pass- Try it out'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-L1yPFRJsALI/TfwfsVo5rQI/AAAAAAAACkA/k429eU3uO6k/s72-c/image_thumb%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8990379131568459876</id><published>2011-06-13T22:02:00.001-05:00</published><updated>2011-06-13T22:06:52.934-05:00</updated><title type='text'>Debugger Canvas - VS.NET 2010 Extension</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This is really cool Extension for VS.NET 2010 with SP1, when it hits breakpoint&amp;#160; Debugger canvas shows just the methods that you are debugging&amp;#160; with call lines and local variables as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-R8dlXW7eFP8/TfbPRyaPOfI/AAAAAAAACjc/6NKasaVzndA/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-xOT1U8b4Bn0/TfbPSfxnQGI/AAAAAAAACjg/xYgkq-TQpNs/image_thumb%25255B1%25255D.png?imgmax=800" width="1028" height="224" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here below image I invoked two methods from different class so it opens different windows for each method with Local variables.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-RlPxDd57ZPw/TfbPS83ZB3I/AAAAAAAACjk/naDF1aydteI/s1600-h/image%25255B8%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-pDvmqaBDlq8/TfbPTdhm7AI/AAAAAAAACjo/9oAJ4lGuO5w/image_thumb%25255B4%25255D.png?imgmax=800" width="1028" height="406" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here the following images shows the method and its Local Variables .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-M9G6hR1pGXA/TfbPT-m7fwI/AAAAAAAACjs/BQ5XMSIaDz4/s1600-h/image%25255B12%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-2bj8PCgnesM/TfbPUGpMIfI/AAAAAAAACjw/otO_hjgw_qM/image_thumb%25255B6%25255D.png?imgmax=800" width="1028" height="294" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is the different options we can set for Debugger canvas, to get here click debug-&amp;gt; Options &amp;amp; Settings from VS.NET 2010 Menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-0C29yYPS2zM/TfbPUS2R7eI/AAAAAAAACj0/zlntSAB02wk/s1600-h/image%25255B16%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-ag8ZDH_HHz4/TfbPU9FoFiI/AAAAAAAACj4/STsXCvciEU0/image_thumb%25255B8%25255D.png?imgmax=800" width="644" height="376" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;If you like and wanted to load please Point your IE&amp;#160; to &lt;/h4&gt;  &lt;h4&gt;&lt;a href="http://msdn.microsoft.com/en-us/devlabs/debuggercanvas"&gt;http://msdn.microsoft.com/en-us/devlabs/debuggercanvas&lt;/a&gt; and download&lt;/h4&gt;  &lt;h4&gt; download &lt;/h4&gt;  &lt;p&gt;FYI. The Debugger Canvas is built on technologies that only ship with Visual Studio Ultimate, such as IntelliTrace and the code analysis features in the Architecture tools.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan,&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8990379131568459876?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8990379131568459876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8990379131568459876' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8990379131568459876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8990379131568459876'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/debugger-canvas-vsnet-2010-extension.html' title='Debugger Canvas - VS.NET 2010 Extension'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-xOT1U8b4Bn0/TfbPSfxnQGI/AAAAAAAACjg/xYgkq-TQpNs/s72-c/image_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5122294973568789352</id><published>2011-06-05T23:53:00.001-05:00</published><updated>2011-06-05T23:53:56.562-05:00</updated><title type='text'>How to Host WCF Service in BasicHttpBinding &amp; HTTPS</title><content type='html'>&lt;p&gt;Today One of my Best Friend asked me how to host WCF service in IIS with HTTPS binding . I showed the demo to him from my machine then I thought let me share in my blog here it is.&lt;/p&gt;  &lt;p&gt; To host WCF service in HTTPS here are basic steps we need to follow&lt;/p&gt;  &lt;p&gt;1) First Create Self contained Certificate ( we are doing in Development )&lt;/p&gt;  &lt;p&gt;2) Create Web Site with Port 443 ( Https –secure )&lt;/p&gt;  &lt;p&gt;3) Change the some settings in Web.config&lt;/p&gt;  &lt;p&gt;First to create Self contained Server Certificate&amp;#160; Open IIS&amp;#160; Manger and select the Server Certificates Icon Under IIS section as shown below&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-L0QQB8LBOYE/TexdTqax_aI/AAAAAAAACis/EUgO4LF6yRI/s1600-h/image%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-MaButBWzdzo/TexdULLMVwI/AAAAAAAACiw/XhJu9NZ48dA/image_thumb%25255B2%25255D.png?imgmax=800" width="1028" height="168" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-Br0M8K_BoKQ/TexdUe9PdmI/AAAAAAAACi0/jSwiinVpJn0/s1600-h/image%25255B8%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-0kSLVsp-xqc/TexdU5sUrEI/AAAAAAAACi4/e2im9Kk5ojA/image_thumb%25255B4%25255D.png?imgmax=800" width="1028" height="191" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-GXf4-w3P5v0/TexdVAljN0I/AAAAAAAACi8/gfTVCftj40Y/s1600-h/image%25255B12%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-eBO3uN5Az18/TexdVlwdHhI/AAAAAAAACjA/GqKISb0rvek/image_thumb%25255B6%25255D.png?imgmax=800" width="1028" height="770" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next Create the Web site with HTTPS binding and 443 port number &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-uLXiedR0cc0/TexdWG_1jnI/AAAAAAAACjE/TKHNZPuokCA/s1600-h/image%25255B21%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-gNfPMr5JoGc/TexdWhTqpXI/AAAAAAAACjI/27cl_7aoTBs/image_thumb%25255B11%25255D.png?imgmax=800" width="1013" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next we need to change web.config to set Security mode as&amp;#160; Transport &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-3kSLkcg17yQ/TexdW_uP7LI/AAAAAAAACjM/Pm6CKog4dkA/s1600-h/image%25255B22%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-fNQ95qn0i1I/TexdXtMZDDI/AAAAAAAACjQ/-NkrULmPNas/image_thumb%25255B12%25255D.png?imgmax=800" width="1028" height="593" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now browse the site with HTTPS &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-uNi4zsKUXJA/TexdX2eUN-I/AAAAAAAACjU/_hVwEDS_-iE/s1600-h/image%25255B26%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/-K3im5dkUQLU/TexdYS2U8OI/AAAAAAAACjY/g-6F9dlMwY8/image_thumb%25255B14%25255D.png?imgmax=800" width="767" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;For Production environment you can obtain the Certificates from Verisign or CA and install on the server .&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasa ragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-5122294973568789352?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/5122294973568789352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=5122294973568789352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5122294973568789352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5122294973568789352'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/how-to-host-wcf-service-in.html' title='How to Host WCF Service in BasicHttpBinding &amp;amp; HTTPS'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-MaButBWzdzo/TexdULLMVwI/AAAAAAAACiw/XhJu9NZ48dA/s72-c/image_thumb%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7331127889738043646</id><published>2011-06-05T01:39:00.001-05:00</published><updated>2011-06-05T01:39:09.490-05:00</updated><title type='text'>EF 4.1 Code First Approach</title><content type='html'>&lt;p&gt;In this Blog post we are going to see Entity Framework 4.1 Code First approach.&amp;#160; Here I am going to create Small console application to demonstrate. First of all you may ask question what is code first?&lt;/p&gt;  &lt;p&gt;EF code first means first Define the classes this is nothing but our MODEL , then EF will work with theses classes this is called CODE FIRST APPROACH. Here I am going to use&amp;#160; Nuget to get EF 4.1 Reference assemblies from the Internet.&amp;#160; Here is how you get it.&lt;/p&gt;  &lt;p&gt;First Create C# Console application then go to tools menu in VS.NET 2010&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-zMwSo3QYisM/TeskfM4wDgI/AAAAAAAACiU/zaC3_KEvk0s/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-dEFSmytuKIw/TeskgMy0OlI/AAAAAAAACiY/xZa8G2d8pgI/image_thumb%25255B1%25255D.png?imgmax=800" width="644" height="428" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once you click Package Manager Console you will provided to execute the&amp;#160; W&lt;strong&gt;indows PowerShell prompt to execute the command . The command we need to execute to get&amp;#160; EF 4.0 assemblies is&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Install-Package EntityFramework.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-4ZcCgyCGttU/TeskgtlMZZI/AAAAAAAACic/nWMfCTC9jYA/s1600-h/image%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/-4HgykoL3Zk0/TeskhENIEDI/AAAAAAAACig/H13qqGDw878/image_thumb%25255B3%25255D.png?imgmax=800" width="483" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next create the Entity class and Context class as shown below&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;DB Context&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;public class ContactCtx :DbContext   &lt;br /&gt;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public DbSet&amp;lt;Contact&amp;gt; Contacts    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160; }&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;Entity &lt;/u&gt;&lt;/h2&gt;  &lt;br /&gt;  &lt;p&gt;public class Contact   &lt;br /&gt;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public int Id    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public string Name    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public string Phone    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public string Email   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;&amp;#160;&amp;#160; }    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Here I am creating a contact that will be saved in DB.&lt;/p&gt;  &lt;p&gt;class Program   &lt;br /&gt;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; static void Main(string[] args)    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ContactCtx db = new ContactCtx();    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; db.Contacts.Add(new Contact    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Name = &amp;quot;Vasanth.v&amp;quot;,    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Phone = &amp;quot;23232323&amp;quot;,    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Email = &amp;quot;v@v.com&amp;quot;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; });    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int a=&amp;#160; db.SaveChanges();    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(&amp;quot;DB ID is &amp;quot; +a);&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Contact c= db.Contacts.Find(1);   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160; }&lt;/p&gt;  &lt;p&gt;when you execute the program the DB is created and the records are added .&amp;#160; EF use SQL Express by default if do not specify .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-evDFHrsFmsA/Teskh0KiAxI/AAAAAAAACik/vUvbumCMdaQ/s1600-h/image%25255B11%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-B3uQsv3T7mU/TeskjMKx_yI/AAAAAAAACio/LJgORJBLPBg/image_thumb%25255B5%25255D.png?imgmax=800" width="644" height="335" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7331127889738043646?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7331127889738043646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7331127889738043646' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7331127889738043646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7331127889738043646'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/ef-41-code-first-approach.html' title='EF 4.1 Code First Approach'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-dEFSmytuKIw/TeskgMy0OlI/AAAAAAAACiY/xZa8G2d8pgI/s72-c/image_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7159701954309090704</id><published>2011-06-02T01:40:00.001-05:00</published><updated>2011-06-02T01:40:27.087-05:00</updated><title type='text'>Windows Azure Pricing Calculator</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Here is the Calculator for windows Azure Pricing.&lt;/p&gt;    &lt;p&gt;&lt;a title="http://www.microsoft.com/windowsazure/pricing-calculator/" href="http://www.microsoft.com/windowsazure/pricing-calculator/"&gt;http://www.microsoft.com/windowsazure/pricing-calculator/&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-o0jTXggVyjg/TecwWHkmjaI/AAAAAAAACiM/j9gfZJj0Ysw/s1600-h/image%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/-yyHlwklwP4I/TecwWnxZkJI/AAAAAAAACiQ/l6d027MFfIg/image_thumb%25255B1%25255D.png?imgmax=800" width="766" height="772" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7159701954309090704?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7159701954309090704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7159701954309090704' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7159701954309090704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7159701954309090704'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/06/windows-azure-pricing-calculator.html' title='Windows Azure Pricing Calculator'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-yyHlwklwP4I/TecwWnxZkJI/AAAAAAAACiQ/l6d027MFfIg/s72-c/image_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6610477566035219560</id><published>2011-04-17T02:18:00.000-05:00</published><updated>2011-04-17T02:35:39.735-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OData'/><title type='text'>Exposing POCO as OData Service.</title><content type='html'>&lt;p&gt;OData – Open Protocol Data aka WCF Data Services.&lt;/p&gt;  &lt;p&gt;&lt;img src="http://t0.gstatic.com/images?q=tbn:ANd9GcQ7oRL8KgVBxuFziK8hqy99E3GsreNa9lYDqqx9DoDgNGjmLUvE" width="56" height="57" /&gt;&lt;/p&gt;  &lt;p&gt;We all know that using EF(Entity Framework) Data model exposing any relational Data source is very very easy.&amp;#160; But here I am going to show how to expose Plain Old CLR Objects as&amp;#160; OData Service.&lt;/p&gt;  &lt;p&gt;1) First Create Empty ASP.NET Web Application.&lt;/p&gt;  &lt;p&gt;2) Second we need define or create the Entity Classes and we need to define Primary key using DataServiceKey Attribute for each entity as shown below&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TaqYO7Cu7-I/AAAAAAAAChM/9QwjU3hciS4/s1600-h/image%5B21%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TaqYPGXwM7I/AAAAAAAAChQ/YQ0F9YhBkAA/image_thumb%5B7%5D.png?imgmax=800" width="644" height="273" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;3) Next we need to create the class which exposes the IQueryable properties which returns the collection of Each entity which we created about. here I have defined the Entity as Contact so my IQueryable properties returns collection of Contacts. &lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TaqYPeDT9CI/AAAAAAAAChU/2fbp0-gant8/s1600-h/image%5B22%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TaqYPs2qKVI/AAAAAAAAChY/_u0T9fzbAJc/image_thumb%5B8%5D.png?imgmax=800" width="644" height="210" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TaqYP1ujXaI/AAAAAAAAChc/IAoe8jSeVEE/s1600-h/image%5B23%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TaqYQHBW-iI/AAAAAAAAChg/IMZMmgQi3W0/image_thumb%5B9%5D.png?imgmax=800" width="572" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next we need to add WCF Data Service Template to this project to host the OData Service with the above Entities.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TaqYQdrfcZI/AAAAAAAAChk/u--CDtf9E5U/s1600-h/image%5B24%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TaqYQtt77sI/AAAAAAAACho/CdcYlHStJgE/image_thumb%5B10%5D.png?imgmax=800" width="644" height="348" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once we added WCF Data Service Template next we need to specify the Entity class name as shown below.&amp;#160; Next we can set the Access rule for Entity &lt;/p&gt;  &lt;p&gt;here I set all Entity have read only access.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TaqYRMyxdOI/AAAAAAAAChs/U2Kcp7Z1_U0/s1600-h/image%5B25%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TaqYRZwEvtI/AAAAAAAAChw/Nv5aMWSOMso/image_thumb%5B11%5D.png?imgmax=800" width="644" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now run the service you will see the ODataservice with Two Entity exposed .&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TaqYR14HH6I/AAAAAAAACh0/HyqW-icpDK0/s1600-h/image%5B26%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TaqYSHIBnxI/AAAAAAAACh4/iKOLYLtAxVU/image_thumb%5B12%5D.png?imgmax=800" width="644" height="183" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;IF we browse the following URL we get&amp;#160; Contacts details &lt;a title="http://localhost:52200/WcfDataService1.svc/MyContacts" href="http://localhost:52200/WcfDataService1.svc/MyContacts"&gt;http://localhost:52200/WcfDataService1.svc/MyContacts&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TaqYSbI-xeI/AAAAAAAACh8/4k4KJWVTxYw/s1600-h/image%5B27%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TaqYS9zBHYI/AAAAAAAACiA/7LIFXuT63kI/image_thumb%5B13%5D.png?imgmax=800" width="644" height="279" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6610477566035219560?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6610477566035219560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6610477566035219560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6610477566035219560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6610477566035219560'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/04/exposing-poco-as-odata-service.html' title='Exposing POCO as OData Service.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TaqYPGXwM7I/AAAAAAAAChQ/YQ0F9YhBkAA/s72-c/image_thumb%5B7%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4230271240666755573</id><published>2011-04-15T00:09:00.001-05:00</published><updated>2011-04-15T00:09:24.971-05:00</updated><title type='text'>Get Silverlight 5.0 Beta</title><content type='html'>&lt;p&gt;Silverlight 5 continues the pace of rapid innovation, building on Silverlight 4's capabilities in the areas of rich applications and premium media experiences. With over 40 new features, the Silverlight 5 beta highlights dramatic video quality and performance improvements, as well as new capabilities that improve developer productivity&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TafTAwDpX7I/AAAAAAAAChE/oXATQXcsqZ4/s1600-h/image%5B2%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TafTBDrBkyI/AAAAAAAAChI/gw6Y2Hnx0mo/image_thumb.png?imgmax=800" width="169" height="181" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is the URL where you can download Silverlight 5.0 beta &lt;a title="http://www.silverlight.net/getstarted/silverlight-5-beta/" href="http://www.silverlight.net/getstarted/silverlight-5-beta/"&gt;http://www.silverlight.net/getstarted/silverlight-5-beta/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.R&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4230271240666755573?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4230271240666755573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4230271240666755573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4230271240666755573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4230271240666755573'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/04/get-silverlight-50-beta.html' title='Get Silverlight 5.0 Beta'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TafTBDrBkyI/AAAAAAAAChI/gw6Y2Hnx0mo/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1768495855427155159</id><published>2011-04-06T21:00:00.001-05:00</published><updated>2011-04-06T21:00:20.984-05:00</updated><title type='text'>Escape Sequence for {  in C#</title><content type='html'>&lt;p&gt;Today there was need for me to print {} char in my console output. I knew there are standard Escape Sequences in C# but I was not aware of Escape Sequence for&amp;#160; {.&amp;#160; when I was binging I found the solution to this problem I just wanted to share with my Blog readers.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TZ0aseU8HfI/AAAAAAAACg8/jXai4d07IlI/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TZ0as6ZFYDI/AAAAAAAAChA/NLaLz1W5bxM/image_thumb%5B2%5D.png?imgmax=800" width="640" height="262" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1768495855427155159?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1768495855427155159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1768495855427155159' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1768495855427155159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1768495855427155159'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/04/escape-sequence-for-in-c.html' title='Escape Sequence for {  in C#'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TZ0as6ZFYDI/AAAAAAAAChA/NLaLz1W5bxM/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1946287116894190926</id><published>2011-03-27T19:30:00.001-05:00</published><updated>2011-03-27T19:30:37.269-05:00</updated><title type='text'>System.Runtime.Caching Namespace for Caching-II</title><content type='html'>&lt;p&gt;In this Blog Post we are going to see how we can use this API in .NET Applications.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TY_WllYKDPI/AAAAAAAACgM/3GIULHFIy_w/s1600-h/image%5B49%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TY_WmBf94ZI/AAAAAAAACgQ/Q94vBNauA7Q/image_thumb%5B32%5D.png?imgmax=800" width="644" height="364" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here I am going create my own &lt;strong&gt;CacheLib&lt;/strong&gt; class with the following&amp;#160;&amp;#160; Add, Get, Remove methods as shown above.&lt;/p&gt;  &lt;p&gt;First Let me create a C# class file called&amp;#160; CacheLib.cs&amp;#160; in which&amp;#160; I am going to implement all the CURD methods for the Cache object. to do let us create ObjectCache Cache = MemoryCache.Default . (Memory Cache) Then we Add Get, Add, Remove Methods.&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Add any object to Cache:&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;Here&amp;#160; I am created the Generic Add method.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TY_WnPMJLPI/AAAAAAAACgU/G40inuMmwjs/s1600-h/image%5B41%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TY_WnqlXQEI/AAAAAAAACgY/dxW3Kr4yjag/image_thumb%5B26%5D.png?imgmax=800" width="640" height="86" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Get or Retrieve Cached Item from Cache Object: Generic get method&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TY_Wn7D12VI/AAAAAAAACgc/miQhLQI3RHk/s1600-h/image%5B42%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TY_WoOCS3lI/AAAAAAAACgg/c1moldltwCM/image_thumb%5B27%5D.png?imgmax=800" width="632" height="199" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Remove or Delete from Cache:&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TY_WoSUzb-I/AAAAAAAACgk/KzIg7TJhQVM/s1600-h/image%5B43%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TY_Wo9Z9SCI/AAAAAAAACgo/bAIbdSAiXIU/image_thumb%5B28%5D.png?imgmax=800" width="642" height="83" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;User Defined class to store in Cache.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TY_WpOZoJzI/AAAAAAAACgs/DA0RBBEt6q4/s1600-h/image%5B44%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TY_WqFZMZNI/AAAAAAAACgw/se8Y7yuKql4/image_thumb%5B29%5D.png?imgmax=800" width="796" height="288" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;the following Code snippet shows how to add and retrieve data from Cache object .&lt;/p&gt;        &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TY_WqkVK98I/AAAAAAAACg0/p00dhhh000I/s1600-h/image%5B45%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TY_WrPBBurI/AAAAAAAACg4/DsmSFZY2AIA/image_thumb%5B30%5D.png?imgmax=800" width="912" height="385" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasa Ragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1946287116894190926?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1946287116894190926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1946287116894190926' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1946287116894190926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1946287116894190926'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/systemruntimecaching-namespace-for_27.html' title='System.Runtime.Caching Namespace for Caching-II'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TY_WmBf94ZI/AAAAAAAACgQ/Q94vBNauA7Q/s72-c/image_thumb%5B32%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7762318207158084921</id><published>2011-03-23T22:51:00.001-05:00</published><updated>2011-03-23T22:51:58.934-05:00</updated><title type='text'>System.Runtime.Caching Namespace for Caching</title><content type='html'>&lt;p&gt;Today I happened to come across System.Runtime.Caching&amp;#160; new API in .NET Framework&amp;#160; 4.0 this System.Runtime.Caching namespace contains types that let you implement caching in NET Framework applications. The good thing about this API is we can use this API same as&amp;#160; ASP.NET Out Caching functionality but without a dependency on the System.Web assembly.&lt;/p&gt;  &lt;p&gt;When I Reference System.Runtime.Caching&amp;#160; assembly in my project it was showing not available then after looking project properties I found out this Namespace &lt;strong&gt;NOT part of the .NET 4 client profile&lt;/strong&gt;, it is only in the&lt;strong&gt; full .NET 4 Framework.&lt;/strong&gt;&amp;#160; then I changed my project to Full .NET Framework as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TYq_26i1oYI/AAAAAAAACgE/p5auPWiISpo/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TYq_3RAN-lI/AAAAAAAACgI/rsuBbktCzhw/image_thumb%5B1%5D.png?imgmax=800" width="644" height="426" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next Post we will see how we can use this API to Cache.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7762318207158084921?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7762318207158084921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7762318207158084921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7762318207158084921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7762318207158084921'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/systemruntimecaching-namespace-for.html' title='System.Runtime.Caching Namespace for Caching'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TYq_3RAN-lI/AAAAAAAACgI/rsuBbktCzhw/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6113080644231356208</id><published>2011-03-16T23:58:00.001-05:00</published><updated>2011-03-16T23:58:00.106-05:00</updated><title type='text'>IE 9 Released</title><content type='html'>&lt;p&gt;Point your Old browser to the following URL and see More Beautiful &lt;font size="5"&gt;WEB&lt;/font&gt; – &lt;font size="5"&gt;&lt;strong&gt;W&lt;/strong&gt;e &lt;strong&gt;E&lt;/strong&gt;xchange &lt;strong&gt;B&lt;/strong&gt;ytes&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TYGU1Qr-_JI/AAAAAAAACf8/Mo6ypMNZ4CE/s1600-h/image%5B18%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TYGU105wanI/AAAAAAAACgA/syMLIncnHrg/image_thumb%5B14%5D.png?imgmax=800" width="646" height="189" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie-9/worldwide-languages" href="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie-9/worldwide-languages"&gt;http://windows.microsoft.com/en-US/internet-explorer/downloads/ie-9/worldwide-languages&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6113080644231356208?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6113080644231356208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6113080644231356208' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6113080644231356208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6113080644231356208'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/ie-9-released.html' title='IE 9 Released'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TYGU105wanI/AAAAAAAACgA/syMLIncnHrg/s72-c/image_thumb%5B14%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-2096958776968611393</id><published>2011-03-16T22:38:00.001-05:00</published><updated>2011-03-16T22:38:54.057-05:00</updated><title type='text'>Going Full Screen Mode in Silverlight</title><content type='html'>&lt;p&gt;In Silverlight Application using &lt;strong&gt;App.Current.Host.Content&lt;/strong&gt;&amp;#160; IsFullScreen property we can go Full Screen mode. &lt;/p&gt;  &lt;p&gt;First get the App.Current.Host.Content value and change to True if IsFullScreen is False.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TYGCRNu6API/AAAAAAAACfc/7gNlX-FnaG4/s1600-h/image%5B17%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TYGCRbctE-I/AAAAAAAACfg/gaXXZ9wTO_U/image_thumb%5B11%5D.png?imgmax=800" width="642" height="272" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TYGCRvDD9YI/AAAAAAAACfk/fdwHa8bxVBc/s1600-h/image%5B22%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TYGCSC6cHWI/AAAAAAAACfo/ggMkPyTZPkQ/image_thumb%5B14%5D.png?imgmax=800" width="644" height="462" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;when you click Full Screen Button here is the button click&amp;#160; event handler code.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TYGCSeewRZI/AAAAAAAACfs/Px8Ycs03yNI/s1600-h/image%5B14%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TYGCSjCUj4I/AAAAAAAACfw/sgGRicj_cM8/image_thumb%5B8%5D.png?imgmax=800" width="642" height="129" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is the &lt;strong&gt;FullScreenChanged&lt;/strong&gt; Event Handler.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TYGCS-QXAPI/AAAAAAAACf0/wG-Q-FWCUbQ/s1600-h/image%5B18%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TYGCTGJNHOI/AAAAAAAACf4/d73o-e0cWv0/image_thumb%5B12%5D.png?imgmax=800" width="642" height="220" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-2096958776968611393?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/2096958776968611393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=2096958776968611393' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2096958776968611393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2096958776968611393'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/going-full-screen-mode-in-silverlight.html' title='Going Full Screen Mode in Silverlight'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TYGCRbctE-I/AAAAAAAACfg/gaXXZ9wTO_U/s72-c/image_thumb%5B11%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5319167669947871514</id><published>2011-03-10T21:46:00.001-06:00</published><updated>2011-03-10T22:27:08.365-06:00</updated><title type='text'>Visual Studio 2010 SP-1 Released</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;MS Released SP-1 for VS.NET 2010. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TXmbH4YRAGI/AAAAAAAACfM/NLUXFaO5va8/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TXmbIQtBfSI/AAAAAAAACfQ/TU4AjLvFt6c/image_thumb%5B1%5D.png?imgmax=800" width="644" height="338" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5&amp;amp;displaylang=en" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5&amp;amp;displaylang=en&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I downloaded and Installed it went without&amp;#160; any&amp;#160; ERROR.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TXmkmr48VKI/AAAAAAAACfU/8_BWM1YqFms/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TXmkm9vh4NI/AAAAAAAACfY/13NnvFozv-8/image_thumb%5B1%5D.png?imgmax=800" width="517" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-5319167669947871514?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/5319167669947871514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=5319167669947871514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5319167669947871514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5319167669947871514'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/visual-studio-2010-sp-1-released.html' title='Visual Studio 2010 SP-1 Released'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TXmbIQtBfSI/AAAAAAAACfQ/TU4AjLvFt6c/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7858333202895613005</id><published>2011-03-01T21:26:00.001-06:00</published><updated>2011-03-01T21:26:34.186-06:00</updated><title type='text'>Debugger.Break Method().</title><content type='html'>&lt;p&gt;This method lives inside System.Diagnostics Namespace. This method Signals a breakpoint to an attached debugger. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TW2451rnyzI/AAAAAAAACfE/o9hvl1dbwUw/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TW246SxLsEI/AAAAAAAACfI/iCpHpemUCdk/image_thumb%5B2%5D.png?imgmax=800" width="640" height="394" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This is really useful when we debugging .NET Windows Service.&amp;#160;&amp;#160; In your Program&amp;#160; add the following line of code wherever you want to break into debug mode:   &lt;br /&gt;&lt;strong&gt;System.Diagnostics.Debugger.Break()&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7858333202895613005?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7858333202895613005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7858333202895613005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7858333202895613005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7858333202895613005'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/03/debuggerbreak-method.html' title='Debugger.Break Method().'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TW246SxLsEI/AAAAAAAACfI/iCpHpemUCdk/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3703537763140324086</id><published>2011-02-27T02:20:00.001-06:00</published><updated>2011-02-27T02:20:51.452-06:00</updated><title type='text'>AggregateException In Parallel Programming</title><content type='html'>&lt;p&gt;AggregateException which can contain one or more exceptions. Suppose when you have multiple threads of execution each of the threads could throw and exception as a result .NET Framework “bundle” all of these exceptions which occurred in the parallel operations into one exception which is passed (thrown) back to the caller. Acting as a container for all exceptions generated in a function is the function which the &lt;a href="http://msdn.microsoft.com/en-us/library/system.aggregateexception(VS.100).aspx"&gt;AggregateException Class&lt;/a&gt; performs.&lt;/p&gt;  &lt;p&gt;To Understand any new concept its better to show in an action with Example.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TWoJXhuIPxI/AAAAAAAACe0/ZVXGviVixNI/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TWoJX-jLcII/AAAAAAAACe4/9t17f-RFD-A/image_thumb%5B2%5D.png?imgmax=800" width="455" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWoJYOUzYUI/AAAAAAAACe8/NAw9IlAqgSE/s1600-h/image%5B8%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TWoJYqssrHI/AAAAAAAACfA/_PCHeT7Y6gU/image_thumb%5B4%5D.png?imgmax=800" width="644" height="472" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3703537763140324086?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3703537763140324086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3703537763140324086' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3703537763140324086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3703537763140324086'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/aggregateexception-in-parallel.html' title='AggregateException In Parallel Programming'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TWoJX-jLcII/AAAAAAAACe4/9t17f-RFD-A/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-619101137330002740</id><published>2011-02-25T23:11:00.001-06:00</published><updated>2011-02-25T23:11:58.575-06:00</updated><title type='text'>Installing Windows-7 Service Pack 1</title><content type='html'>&lt;p&gt;Here are the steps to install Windows 7 Service pack 1.&amp;#160; First you need to download System Update Readiness Tool for Windows 7&amp;#160; either 32 bit or b4bit based on what version of windows you installed on your Machine. Here is the link where you can download the above mentioned tool.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWiLktITpII/AAAAAAAACeQ/83oQxqjZIBQ/s1600-h/image9.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWiLk4bqusI/AAAAAAAACeU/choLanAkESY/image_thumb3.png?imgmax=800" width="644" height="71" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/DOWNLOADS/en/details.aspx?FamilyId=914fbc5b-1fba-4bae-a7c3-d2c47c6fcffc&amp;amp;displaylang=en" href="http://www.microsoft.com/DOWNLOADS/en/details.aspx?FamilyId=914fbc5b-1fba-4bae-a7c3-d2c47c6fcffc&amp;amp;displaylang=en"&gt;http://www.microsoft.com/DOWNLOADS/en/details.aspx?FamilyId=914fbc5b-1fba-4bae-a7c3-d2c47c6fcffc&amp;amp;displaylang=en&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;why this tool needed?&lt;/h2&gt;  &lt;h4&gt;This tool is being offered because an inconsistency was found in the Windows servicing store which may prevent the successful installation of future updates, service packs, and software. This tool checks your computer for such inconsistencies and tries to resolve issues if found.&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TWiLldA7bfI/AAAAAAAACeY/mK_vEd_ti2g/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWiLlr_DW0I/AAAAAAAACec/BV1FJIYkBPA/image_thumb%5B2%5D.png?imgmax=800" width="623" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWiLmNyhNnI/AAAAAAAACeg/TC3BWxJ6e0w/s1600-h/image%5B5%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWiLmkkD5qI/AAAAAAAACek/jbAzSahk0lw/image_thumb%5B3%5D.png?imgmax=800" width="626" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TWiLm-_V68I/AAAAAAAACeo/vP6_IeXnLGU/s1600-h/image%5B6%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TWiLnbOTdiI/AAAAAAAACes/FYVmcE-qoZc/image_thumb%5B4%5D.png?imgmax=800" width="621" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasa Ragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-619101137330002740?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/619101137330002740/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=619101137330002740' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/619101137330002740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/619101137330002740'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/installing-windows-7-service-pack-1.html' title='Installing Windows-7 Service Pack 1'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TWiLk4bqusI/AAAAAAAACeU/choLanAkESY/s72-c/image_thumb3.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4183504251329289459</id><published>2011-02-19T21:50:00.001-06:00</published><updated>2011-02-19T21:50:34.592-06:00</updated><title type='text'>Parallel.For and Parallel.ForEach in .NET 4.0</title><content type='html'>&lt;p&gt;Basically &lt;strong&gt;Parallel.For&lt;/strong&gt; and&lt;strong&gt; Parallel.ForEach&lt;/strong&gt; is very similar to &lt;strong&gt;For &lt;/strong&gt;and &lt;strong&gt;ForEach&lt;/strong&gt; except that&amp;#160; Paralle.For and ForEach use Multiple threads to execute different iterations of the loop body.&amp;#160; Using Parallel loops are very good way to&amp;#160; speed of the multicore machines.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWCPhkwz-JI/AAAAAAAACds/4y0EPlnBcJ0/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TWCPh9cojII/AAAAAAAACdw/WkwyJMcAPI8/image_thumb%5B4%5D.png?imgmax=800" width="1024" height="757" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;when we execute the above code. here is the result .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWCPiD_hEfI/AAAAAAAACd0/UzRJqdP3ymA/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWCPioDzHCI/AAAAAAAACd4/Q0-CHkA_Oww/image_thumb%5B1%5D.png?imgmax=800" width="1028" height="450" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4183504251329289459?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4183504251329289459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4183504251329289459' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4183504251329289459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4183504251329289459'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/parallelfor-and-parallelforeach-in-net.html' title='Parallel.For and Parallel.ForEach in .NET 4.0'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TWCPh9cojII/AAAAAAAACdw/WkwyJMcAPI8/s72-c/image_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-2598838996846583247</id><published>2011-02-19T15:30:00.001-06:00</published><updated>2011-02-19T15:30:08.923-06:00</updated><title type='text'>Parallel Programming .NET 4.0 IV–Using Task.Factory.FromAsync convert Task to asynchronous Method.</title><content type='html'>&lt;p&gt;In this blog post we are going to see how we can covert asynchronous method call to Task by using Task.Factory.FromAsync method. &lt;/p&gt;  &lt;p&gt;For this example I am going to call the following&amp;#160; Web service&amp;#160; to get the weather information for given Zip code.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TWA2VXlyIAI/AAAAAAAACdE/Q5-dyTCUrAs/s1600-h/image3.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWA2VqPrj5I/AAAAAAAACdI/jJcMeENtUV0/image_thumb1.png?imgmax=800" width="598" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;when adding this above Web Service Reference we need to check&amp;#160; Generate asynchronous Operations. so that VS.NET will generate Async method calls.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TWA2V_QYV6I/AAAAAAAACdM/0NsDL6RFq2M/s1600-h/image9.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TWA2WZuti5I/AAAAAAAACdQ/buvTz4d7iO4/image_thumb5.png?imgmax=800" width="612" height="507" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;First Create Instance of the web service Proxy. and Create the Task with Begin and End methods which you are going to invoke on Web Service.&amp;#160; Basically this web service takes input as Zip code and returns as 1 week Weather forecast info&amp;#160; . &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TWA2W9fKTsI/AAAAAAAACdU/V5VJsMgNn_Q/s1600-h/image%5B5%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TWA2XEFLDII/AAAAAAAACdY/m2_I0CJY7wk/image_thumb%5B2%5D.png?imgmax=800" width="1024" height="639" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here is the weather result for the Zipcode =75023&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TWA2XTQjuRI/AAAAAAAACdc/lAPxVhVdQlY/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TWA2Xji7htI/AAAAAAAACdg/T6-cQIrldf4/image_thumb%5B4%5D.png?imgmax=800" width="644" height="278" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;suppose Web service response is null then I can canceling the task .&amp;#160; here is the result for unknown zip code.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TWA2X6bE5KI/AAAAAAAACdk/KvbrsYplMg8/s1600-h/image%5B13%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TWA2YBhcG9I/AAAAAAAACdo/cBR0oFbIsig/image_thumb%5B6%5D.png?imgmax=800" width="644" height="102" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here I am scheduling a continuation task once we get the response from Web Service. I feel this way of calling Web Service is more convenient than an IAsyncResult.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-2598838996846583247?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/2598838996846583247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=2598838996846583247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2598838996846583247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2598838996846583247'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/parallel-programming-net-40-ivusing.html' title='Parallel Programming .NET 4.0 IV–Using Task.Factory.FromAsync convert Task to asynchronous Method.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TWA2VqPrj5I/AAAAAAAACdI/jJcMeENtUV0/s72-c/image_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1266691462494427314</id><published>2011-02-19T01:58:00.001-06:00</published><updated>2011-02-19T01:58:18.303-06:00</updated><title type='text'>Parallel Programming in .NET 4.0 Cancelling Tasks PART-III.</title><content type='html'>&lt;p&gt;In this Blog post we are going to see how we can cancel the Task which is already running. Here is the steps we need to perform to cancelling the running Task.&lt;/p&gt;  &lt;p&gt;1) First&amp;#160; create the&amp;#160;&amp;#160; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV94DjNs0FI/AAAAAAAACcc/-4GcsMuRa84/s1600-h/image%5B2%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TV94D69nFeI/AAAAAAAACcg/8aYEFSl7wIU/image_thumb.png?imgmax=800" width="244" height="23" /&gt;&lt;/a&gt; .&lt;/p&gt;  &lt;p&gt;2) Get the &lt;strong&gt;CancellationToken&lt;/strong&gt; from CancellationTokenSource&amp;#160; Token &lt;strong&gt;Property.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;3) Pass the &lt;strong&gt;CancellationToken&lt;/strong&gt;&amp;#160; Token when we creating the Task or Task&amp;lt;T&amp;gt;.&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TV94ECbcpKI/AAAAAAAACck/8d33jPIffAk/s1600-h/image%5B22%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TV94EVWzERI/AAAAAAAACco/IlAZRQS6kJI/image_thumb%5B16%5D.png?imgmax=800" width="1028" height="92" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now to cancel the running Task simply call the&amp;#160; Cancel() method on &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TV94EqxBLmI/AAAAAAAACcs/qy78dyXVJvg/s1600-h/image%5B29%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TV94Ew5M0oI/AAAAAAAACcw/l0PkV1sVU9A/image_thumb%5B18%5D.png?imgmax=800" width="244" height="23" /&gt;&lt;/a&gt; class variable instance.&lt;/p&gt;  &lt;p&gt;For a better implementation of cancellation, the task itself can regularly poll the token by calling token.&lt;strong&gt;ThrowIfCancellationRequested&lt;/strong&gt; (), so that the task will be canceled even if it has already started running by the time the token was canceled.&lt;/p&gt;  &lt;p&gt;Here is an Action &lt;/p&gt;  &lt;h2&gt;&lt;u&gt;Cancellation by Polling&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV94FSWFRGI/AAAAAAAACc0/KAqlBXvws1s/s1600-h/image%5B34%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TV94F-hB2EI/AAAAAAAACc4/jIQTsrv9Y9I/image_thumb%5B21%5D.png?imgmax=800" width="900" height="774" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;Registering the Cancellation Delegate&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;You can register the callback method when Task Cancellation is requested. This type of Cancellation very useful in UI application .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV94GCmqjDI/AAAAAAAACc8/Hv1KY3Jmblc/s1600-h/image%5B41%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TV94GRwynKI/AAAAAAAACdA/Dn3XA3Yq7GI/image_thumb%5B26%5D.png?imgmax=800" width="907" height="470" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1266691462494427314?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1266691462494427314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1266691462494427314' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1266691462494427314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1266691462494427314'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/parallel-programming-in-net-40_19.html' title='Parallel Programming in .NET 4.0 Cancelling Tasks PART-III.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TV94D69nFeI/AAAAAAAACcg/8aYEFSl7wIU/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6985317835287434181</id><published>2011-02-19T01:04:00.001-06:00</published><updated>2011-02-19T01:04:24.721-06:00</updated><title type='text'>Parallel Programming .NET Framework 4.0 PART-II</title><content type='html'>&lt;h3&gt; In my last Blog&amp;#160; post &lt;a title="http://mstecharchitect.blogspot.com/2011/02/parallel-programming-in-net-40.html" href="http://mstecharchitect.blogspot.com/2011/02/parallel-programming-in-net-40.html"&gt;http://mstecharchitect.blogspot.com/2011/02/parallel-programming-in-net-40.html&lt;/a&gt; I introduced the Task Class. Now we are going to see how we can get Computed values from asynchronously executed Task using Task&amp;lt;T&amp;gt;.&lt;/h3&gt;  &lt;p&gt;Here is the&amp;#160; Example returning values from Task.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TV9rdd4UKSI/AAAAAAAACcM/idp423-oeoc/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TV9rdn-s2yI/AAAAAAAACcQ/8ugAh0UvrSw/image_thumb%5B2%5D.png?imgmax=800" width="1024" height="349" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here the above task body delegate returns a value that is exposed via the &lt;strong&gt;Result&lt;/strong&gt; property on the task. When you access the Result property, you will get the result immediately if the task has already completed, or otherwise the call will block until the computation completes. &lt;/p&gt;  &lt;p&gt;Next we are going execute two Tasks and wait for them to complete and print their Results .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV9rdzl3k7I/AAAAAAAACcU/UvPzTJ3huhA/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TV9reHcikSI/AAAAAAAACcY/URLAinxKMEA/image_thumb%5B5%5D.png?imgmax=800" width="1024" height="495" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragvan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6985317835287434181?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6985317835287434181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6985317835287434181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6985317835287434181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6985317835287434181'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/parallel-programming-net-framework-40.html' title='Parallel Programming .NET Framework 4.0 PART-II'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TV9rdn-s2yI/AAAAAAAACcQ/8ugAh0UvrSw/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8031739950190336871</id><published>2011-02-19T00:43:00.001-06:00</published><updated>2011-02-19T00:43:17.710-06:00</updated><title type='text'>Parallel Programming in .NET 4.0</title><content type='html'>&lt;h3&gt;What is PFX?&lt;/h3&gt;  &lt;p&gt;PFX- Parallel programming Framework in .NET 4.0 Microsoft Introduced new Library called TPL Tasks Parallel Library. Parallel programming is boarder concept of &lt;strong&gt;multithreading&lt;/strong&gt;. Parallel programming means leveraging multicore or multiprocessor. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TV9meleP0BI/AAAAAAAACbc/6GZ51xbx9vM/s1600-h/image%5B35%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TV9me-uIK7I/AAAAAAAACbg/My1h5jaOw-U/image_thumb%5B24%5D.png?imgmax=800" width="158" height="67" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Why we need to do Parallelism to our code ?&lt;/h3&gt;  &lt;p&gt;In Recent days we can see that computer CPU speeds are stagnated and adding more cores. so our current programming code wont utilize the all Cores. To speed up and utilize al Cores we need to add Parallel programming code. Even we can use basic System.Threading Namespace to do all Multithreading but its harder to do Data partitioning and collating and thread safety. But it easy to do with Microsoft new TPL library which comes with .NET Framework 4.0&lt;/p&gt;  &lt;p&gt;One of the&amp;#160; main feature in .NET Framework is TPL framework Libraries.&amp;#160; TPL – Task Parallel Library . This Library make it easier for developers to write Parallel programs that can run on multi-core Machines. In this blog post I am going to show you how to write Parallel /Asynchronous&amp;#160; programming.&lt;/p&gt;  &lt;p&gt;First&amp;#160; let us look at the&amp;#160; &lt;strong&gt;TASK&lt;/strong&gt; Class&amp;#160; this class lives in System.Threading.Tasks &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV9mfHwiqaI/AAAAAAAACbk/xNMZxh7GCsM/s1600-h/image7.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TV9mfQI8JiI/AAAAAAAACbo/_zB58XjIYAY/image_thumb5.png?imgmax=800" width="260" height="191" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; Here is simple programs using Task class.&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;TASK:&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TV9mfbooDYI/AAAAAAAACbs/AuFcG4Wtlas/s1600-h/image%5B29%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TV9mf9u0FVI/AAAAAAAACbw/9PSVuNOMpyY/image_thumb%5B20%5D.png?imgmax=800" width="646" height="308" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TV9mgPV3ycI/AAAAAAAACb0/uPJOy7D1JHo/s1600-h/image%5B30%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TV9mgZJYVAI/AAAAAAAACb4/aOMZ7-wcR5k/image_thumb%5B21%5D.png?imgmax=800" width="1030" height="308" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;ContinueWith:&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;Suppose we want to execute some task one after another , I mean continues task we can use&amp;#160; &lt;strong&gt;ContinueWith&lt;/strong&gt;&amp;#160; method&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV9mgoWoxmI/AAAAAAAACb8/zgBOKw8kGCc/s1600-h/image%5B31%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TV9mg4X961I/AAAAAAAACcA/_9AGKagOEm4/image_thumb%5B22%5D.png?imgmax=800" width="886" height="774" /&gt;&lt;/a&gt;&lt;/p&gt;        &lt;p&gt;Here is my extension method to print IEnumerable&amp;lt;T&amp;gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TV9mhC_y2sI/AAAAAAAACcE/ZDpCFaln_Zg/s1600-h/image%5B32%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TV9mhO3LJXI/AAAAAAAACcI/V-4ivP9xRII/image_thumb%5B23%5D.png?imgmax=800" width="646" height="318" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8031739950190336871?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8031739950190336871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8031739950190336871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8031739950190336871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8031739950190336871'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/parallel-programming-in-net-40.html' title='Parallel Programming in .NET 4.0'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TV9me-uIK7I/AAAAAAAACbg/My1h5jaOw-U/s72-c/image_thumb%5B24%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5325432985069251731</id><published>2011-02-13T21:32:00.001-06:00</published><updated>2011-02-13T21:32:11.493-06:00</updated><title type='text'>Oracle Released  ODAC [Oracle Data Access Components]</title><content type='html'>&lt;p&gt;I think personally this is great news for me.&amp;#160;&amp;#160; Now we use use Oracle DB to created LINQ and EF&amp;#160; Entity's.&amp;#160;&amp;#160; here is the beta version of ODAC you can download and test it. &lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.oracle.com/technetwork/topics/dotnet/downloads/oracleefbeta-302521.html" href="http://www.oracle.com/technetwork/topics/dotnet/downloads/oracleefbeta-302521.html"&gt;http://www.oracle.com/technetwork/topics/dotnet/downloads/oracleefbeta-302521.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;img src="http://tekpub.com/images/ef_thumb.png" width="120" height="88" /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;img src="http://www.bestdotnettraining.com/NewTemplateImages/linq-icon.jpg" width="150" height="89" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TViiOKtUtiI/AAAAAAAACbU/Z-UOvjnI9sQ/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TViiOuxEGRI/AAAAAAAACbY/a_fJVXO3HCg/image_thumb%5B1%5D.png?imgmax=800" width="644" height="451" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-5325432985069251731?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/5325432985069251731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=5325432985069251731' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5325432985069251731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5325432985069251731'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/oracle-released-odac-oracle-data-access.html' title='Oracle Released  ODAC [Oracle Data Access Components]'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TViiOuxEGRI/AAAAAAAACbY/a_fJVXO3HCg/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-910436288055666249</id><published>2011-02-12T07:43:00.001-06:00</published><updated>2011-02-12T07:43:52.834-06:00</updated><title type='text'>IE 9 Release Candidate    RC- Really Cool</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Download the Internet Explorer 9 Release Candidate to see what’s new &lt;/h5&gt;  &lt;p&gt;&lt;a title="http://msdn.microsoft.com/en-us/ie/default.aspx?WT.mc_id=MSCOM_HP_US_F_113LSUS004275" href="http://msdn.microsoft.com/en-us/ie/default.aspx?WT.mc_id=MSCOM_HP_US_F_113LSUS004275"&gt;http://msdn.microsoft.com/en-us/ie/default.aspx?WT.mc_id=MSCOM_HP_US_F_113LSUS004275&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://services.social.microsoft.com/feeds/FeedItem?feedId=a55550ef-a09e-40ff-b5bb-4f54d8dd4f84&amp;amp;itemId=8e9ae735-5b17-42aa-8701-527d3d5e514a&amp;amp;title=Internet+Explorer+9+RC+Now+Available&amp;amp;uri=http%3a%2f%2fwindows.microsoft.com%2fen-US%2finternet-explorer%2fdownload%2fie-9%2fworldwide&amp;amp;k=0IFnuiprAwuOoQ5fIxyKq1QBu4PSq7Ief9tRy2IgVw8%3d"&gt;Internet Explorer 9 RC Now Available&lt;/a&gt;    &lt;br /&gt;Download the Internet Explorer 9 Release Candidate to see what’s new &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TVaOlEIbhZI/AAAAAAAACbA/gstGBJoIK6o/s1600-h/image%5B6%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TVaOlf2MRQI/AAAAAAAACbE/u0bkSMEVdBo/image_thumb%5B2%5D.png?imgmax=800" width="644" height="146" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TVaOlvnDhII/AAAAAAAACbI/gyy29-dTx0w/s1600-h/image%5B7%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TVaOmPOATtI/AAAAAAAACbM/rDcNokngF08/image_thumb%5B3%5D.png?imgmax=800" width="644" height="246" /&gt;&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-910436288055666249?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/910436288055666249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=910436288055666249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/910436288055666249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/910436288055666249'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/ie-9-release-candidate-rc-really-cool.html' title='IE 9 Release Candidate    RC- Really Cool'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TVaOlf2MRQI/AAAAAAAACbE/u0bkSMEVdBo/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8145633716644954534</id><published>2011-02-10T22:22:00.001-06:00</published><updated>2011-02-10T22:22:44.503-06:00</updated><title type='text'>Custom Configuration Section in .NET Apps</title><content type='html'>&lt;p&gt;In this Blog post I am going to write how to define Custom Configuration section in .NET Apps either App.Config or Web.config&amp;#160; and how to use it our programs&lt;/p&gt;  &lt;p&gt;Here are the Steps we need to perform&lt;/p&gt;  &lt;p&gt;1)&amp;#160; First Create the class which is derived from &lt;strong&gt;ConfigurationSection &lt;/strong&gt;this class resides inside &lt;strong&gt;System.Configuration&lt;/strong&gt; Namespace.&lt;/p&gt;  &lt;p&gt;2) Next we need Define Our custom configuration section in our App.config or Web.Config file.&amp;#160; for example here is my custom configuration looks like .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TVS5giNavHI/AAAAAAAACaQ/PCWFCNiRa4A/s1600-h/image10.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5hfzgM4I/AAAAAAAACaU/8Z4tMpSwK-4/image_thumb8.png?imgmax=800" width="1024" height="423" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;3) Next we need to create two more classes which Reads our configuration&lt;strong&gt; Key&lt;/strong&gt; and &lt;strong&gt;Key collection&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Here Key are &lt;strong&gt;Name&lt;/strong&gt; and &lt;strong&gt;Value&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5iIvhsnI/AAAAAAAACaY/WtP_vKyM8GU/s1600-h/image21.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5iZqM2FI/AAAAAAAACac/EWrg59fr9FM/image_thumb15.png?imgmax=800" width="640" height="41" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TVS5iofhYuI/AAAAAAAACag/-2H1OG-iHQw/s1600-h/image20.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5iy8yGrI/AAAAAAAACak/l5Z0fW55JUQ/image_thumb14.png?imgmax=800" width="640" height="403" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Next we need to Read Key collection so here is how the class for that &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5jBEpPJI/AAAAAAAACao/03uBVMpllGI/s1600-h/image22%5B1%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TVS5jtnmUzI/AAAAAAAACas/o5Lm7wgS-ZU/image22_thumb.png?imgmax=800" width="640" height="425" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here we are creating Indexer to store key collection as object.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here is how we use it our program &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TVS5j4OfkFI/AAAAAAAACaw/jncFhj-0mhQ/s1600-h/image%5B5%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TVS5kXPNvcI/AAAAAAAACa0/NWl5cS3rOJc/image_thumb%5B2%5D.png?imgmax=800" width="1024" height="558" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TVS5ksMixqI/AAAAAAAACa4/puKCXWOXey0/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TVS5k7f6tKI/AAAAAAAACa8/6FbVfjtKNJo/image_thumb%5B4%5D.png?imgmax=800" width="644" height="330" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8145633716644954534?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8145633716644954534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8145633716644954534' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8145633716644954534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8145633716644954534'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/custom-configuration-section-in-net.html' title='Custom Configuration Section in .NET Apps'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TVS5hfzgM4I/AAAAAAAACaU/8Z4tMpSwK-4/s72-c/image_thumb8.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3351908254154911463</id><published>2011-02-09T22:11:00.001-06:00</published><updated>2011-02-09T22:11:30.560-06:00</updated><title type='text'>Get ready for Windows 7 SP1  &amp; Windows server 2008 R2</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;&lt;img src="http://www.techpin.com/wp-content/uploads/2009/10/windows_7_by_janbannan.jpg" width="407" height="345" /&gt;&lt;/h5&gt;  &lt;p&gt;for more info&amp;#160; go here&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.zdnet.com/blog/microsoft/at-last-its-time-for-sp1-for-windows-7-server-2008-r2/8636?tag=content;feature-roto" href="http://www.zdnet.com/blog/microsoft/at-last-its-time-for-sp1-for-windows-7-server-2008-r2/8636?tag=content;feature-roto"&gt;http://www.zdnet.com/blog/microsoft/at-last-its-time-for-sp1-for-windows-7-server-2008-r2/8636?tag=content;feature-roto&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3351908254154911463?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3351908254154911463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3351908254154911463' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3351908254154911463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3351908254154911463'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/02/get-ready-for-windows-7-sp1-windows.html' title='Get ready for Windows 7 SP1  &amp;amp; Windows server 2008 R2'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6416953056322281401</id><published>2011-01-01T21:34:00.001-06:00</published><updated>2011-01-01T21:34:15.918-06:00</updated><title type='text'>Wish You All  Very HAPPY NEW YEAR 2011</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TR_yMrj5PqI/AAAAAAAACaE/b3mmtBisBzg/s1600-h/image%5B6%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TR_yNeYLsUI/AAAAAAAACaI/snkfc6wg4gE/image_thumb%5B4%5D.png?imgmax=800" width="1024" height="96" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasa Ragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6416953056322281401?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6416953056322281401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6416953056322281401' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6416953056322281401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6416953056322281401'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2011/01/wish-you-all-very-happy-new-year-2011.html' title='Wish You All  Very HAPPY NEW YEAR 2011'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TR_yNeYLsUI/AAAAAAAACaI/snkfc6wg4gE/s72-c/image_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-806926909231602458</id><published>2010-12-17T21:47:00.001-06:00</published><updated>2010-12-17T21:47:30.691-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>Rx.NET</title><content type='html'>&lt;h3&gt;Rx- Is the new Library in .NET Framework to compose asynchronous and event based programs into Observable Collections. Rx also called Reactive Extensions. Rx Library comes in 3 flavors one for .NET 4.0, Silverlight and JavaScript. you can download and installed from the following link&lt;/h3&gt;  &lt;p&gt;&lt;a title="http://msdn.microsoft.com/en-us/devlabs/ee794896" href="http://msdn.microsoft.com/en-us/devlabs/ee794896"&gt;http://msdn.microsoft.com/en-us/devlabs/ee794896&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Pull Vs Push [ Interactive vs Reactive]&lt;/p&gt;  &lt;p&gt;&lt;u&gt;IEnumerable and IEnumerator&amp;#160;&amp;#160; Pull-Based Collection &lt;/u&gt;&lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.tutornext.com/system/files/u78/Chapter-8-7.gif" width="271" height="239" /&gt;&lt;/p&gt;  &lt;p&gt;IObservable&amp;lt;T&amp;gt; and IObserver&amp;lt;T&amp;gt;. Push Based Collections &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TQwuyzJp4pI/AAAAAAAACZo/0gdEAicvmR4/s1600-h/image12.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TQwuzFTS-sI/AAAAAAAACZs/fBzw0tF19y0/image_thumb5.png?imgmax=800" width="244" height="184" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="6"&gt;&lt;u&gt;Duality &lt;/u&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TQwuza7jZ_I/AAAAAAAACZw/KtCg3J-llzQ/s1600-h/image5.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TQwuzpvbgfI/AAAAAAAACZ0/YHd5yHjiLd4/image_thumb2.png?imgmax=800" width="644" height="198" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TQwu0N2EMJI/AAAAAAAACZ4/V_i098q8rC4/s1600-h/image9.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TQwu0eWWifI/AAAAAAAACZ8/uuXeuEDK84k/image_thumb4.png?imgmax=800" width="644" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next Blog Post we will see some sample programs using RX Framework.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-806926909231602458?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/806926909231602458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=806926909231602458' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/806926909231602458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/806926909231602458'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/12/rxnet.html' title='Rx.NET'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TQwuzFTS-sI/AAAAAAAACZs/fBzw0tF19y0/s72-c/image_thumb5.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5876280936575612668</id><published>2010-12-07T23:08:00.001-06:00</published><updated>2010-12-07T23:08:23.816-06:00</updated><title type='text'>Using IXmlSerializable Interface to serialize Private Members or properties</title><content type='html'>&lt;p&gt;Suppose let say we have a UDT(User Defined Type) object called person which has the following property's Name,Phone and SSN. Here SSN is read-only properties. When you serializing this person object you get the following error.because XmlSerializer wont serialize the Private members.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TP8SvKGFHcI/AAAAAAAACZI/EBVbmZhnEkU/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TP8SvqDJWII/AAAAAAAACZM/-pUEqARgiGU/image_thumb%5B3%5D.png?imgmax=800" width="644" height="391" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;To serialize the person object we can implement the&amp;#160; &lt;strong&gt;IXmlSerializable &lt;/strong&gt;Interface as shown below..&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TP8Sv2n3AsI/AAAAAAAACZQ/xpFqIT7GfpI/s1600-h/image%5B14%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TP8SwoqCHcI/AAAAAAAACZU/bb-gjKkq120/image_thumb%5B6%5D.png?imgmax=800" width="639" height="772" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;Now if you try serialize it will be serialized as XML with out error. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TP8Sw8qyD0I/AAAAAAAACZY/bHPr0a7ILxE/s1600-h/image%5B20%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TP8SxPkUpgI/AAAAAAAACZc/CFZ8sAyWRIk/image_thumb%5B10%5D.png?imgmax=800" width="646" height="362" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is the result &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TP8SxWoZjYI/AAAAAAAACZg/CM2Ul7OMBPo/s1600-h/image%5B24%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TP8SxvLqowI/AAAAAAAACZk/eku4ixsPgGo/image_thumb%5B12%5D.png?imgmax=800" width="644" height="322" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-5876280936575612668?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/5876280936575612668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=5876280936575612668' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5876280936575612668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5876280936575612668'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/12/using-ixmlserializable-interface-to.html' title='Using IXmlSerializable Interface to serialize Private Members or properties'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TP8SvqDJWII/AAAAAAAACZM/-pUEqARgiGU/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7041932396833011650</id><published>2010-12-05T15:18:00.001-06:00</published><updated>2010-12-05T15:18:35.160-06:00</updated><title type='text'>Silverlight 5.0   mainly for  LOB Apps and Rich media solutions</title><content type='html'>&lt;h3&gt;The Silverlight 5 beta will be available sometime in 2011 H1, and more information will be available at &lt;a href="http://www.microsoft.com/silverlight/"&gt;http://www.microsoft.com/silverlight/&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;Silverlight 5 introduces more than 40 new features, including support for running Silverlight applications with desktop features in the browser, dramatic video quality and performance improvements, and features that improve developer productivity.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TPwBqVH6-GI/AAAAAAAACZA/mpu2nIuVX2Q/s1600-h/Microsoft_Silverlight%5B2%5D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Microsoft_Silverlight" border="0" alt="Microsoft_Silverlight" src="http://lh5.ggpht.com/_SDxNQGpww6E/TPwBqn02hmI/AAAAAAAACZE/TStFGMkcYMA/Microsoft_Silverlight_thumb.jpg?imgmax=800" width="219" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7041932396833011650?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7041932396833011650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7041932396833011650' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7041932396833011650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7041932396833011650'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/12/silverlight-50-mainly-for-lob-apps-and.html' title='Silverlight 5.0   mainly for  LOB Apps and Rich media solutions'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TPwBqn02hmI/AAAAAAAACZE/TStFGMkcYMA/s72-c/Microsoft_Silverlight_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4699805631327499582</id><published>2010-12-04T21:38:00.001-06:00</published><updated>2010-12-04T21:38:02.284-06:00</updated><title type='text'>Using ASP.NET Routing Instead of .svc file  When Hosting  WCF RESTful Service in IIS</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;ASP.NET Routing are generally used because they give you more control over your URI’s . Now let see how we can use this Routing to host WCF RESTful Service.&lt;/p&gt;  &lt;p&gt;1) Create a WCF Service Application&lt;/p&gt;  &lt;p&gt;2) Delete the .svc file &lt;/p&gt;  &lt;p&gt;3) Now add&amp;#160; the following &amp;lt;serviceHostingEnvironment&amp;#160; aspNetCompatibilityEnabled=&amp;quot;true&amp;quot; /&amp;gt;to web.config file.&lt;/p&gt;  &lt;p&gt;Next you need to&amp;#160; decorate the your class as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TPsJDn4CyLI/AAAAAAAACYo/jbheZzmE9IQ/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TPsJDwKF0FI/AAAAAAAACYs/cOHd4Bjjaic/image_thumb%5B1%5D.png?imgmax=800" width="1028" height="259" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now add Global.asax file to your Service Project and define the One Private method called RegisterRoutes.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TPsJEFQNxHI/AAAAAAAACYw/LgOnPmfvXE4/s1600-h/image%5B8%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TPsJEpVzQ2I/AAAAAAAACY0/OKId7jU1XDw/image_thumb%5B4%5D.png?imgmax=800" width="644" height="259" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now call this method in Application_Start.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TPsJFAQgEKI/AAAAAAAACY4/0DQfjsKQ3Zc/s1600-h/image%5B13%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TPsJF_mlIfI/AAAAAAAACY8/P9TV5HY_9xM/image_thumb%5B7%5D.png?imgmax=800" width="644" height="140" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now you can browse the service&amp;#160; as&amp;#160; &lt;a href="http://localhost:5018/SreeniRestSvc"&gt;http://localhost:5018/SreeniRestSvc&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4699805631327499582?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4699805631327499582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4699805631327499582' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4699805631327499582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4699805631327499582'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/12/using-aspnet-routing-instead-of-svc.html' title='Using ASP.NET Routing Instead of .svc file  When Hosting  WCF RESTful Service in IIS'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TPsJDwKF0FI/AAAAAAAACYs/cOHd4Bjjaic/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3850287026393533683</id><published>2010-10-24T21:55:00.001-05:00</published><updated>2010-10-24T21:55:00.057-05:00</updated><title type='text'>Using AppFabric (Velocity) Caching API in WCF Service.</title><content type='html'>&lt;p&gt;One of the best way to improve Application performance is to Cache Data which is frequently Accessed or Retrieved from Database so that we can&amp;#160; reduce the trip to Database and we can minimize or avoid the DB operations. MS Velocity offers in-memory caching.&amp;#160; In this blog I am going to show how to cache the some of the frequently access the data .&lt;/p&gt;  &lt;p&gt;In this Exercise I am going to use&amp;#160; MS Free Database Chinook (Album ) as my data model. This Database has bunch of tables but I wanted to cache Customer and Album Tables. Here I am going to create WCF Service which expose to operations which returns list of&amp;#160; All Albums and All Customers.&amp;#160; Before creating WCF service I wanted to give brief introduction on&amp;#160; the Caching API’s we are going to use. Here I am going to use the following two Caching Services APIs &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TMTxbVvi-II/AAAAAAAACXg/mgsKdw3z7YY/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxbuCbICI/AAAAAAAACXk/Y8NAUOtfycc/image_thumb%5B5%5D.png?imgmax=800" width="640" height="85" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To Add Reference to our WCF project we need select it from&amp;#160; GAC ( Global Assembly Cache ). we can not add reference like other Assembly .&amp;#160; GAC is nothing but a&amp;#160; windows&amp;#160; file Folder which is created when you install .NET Framework and its&amp;#160; located&amp;#160; @ &lt;strong&gt; C:\Windows\Assembly&amp;#160; to add reference &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMTxbzmPu-I/AAAAAAAACXo/T3b_dipTWGg/s1600-h/image%5B13%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMTxc2hvQeI/AAAAAAAACXs/gMiHEDe7CIM/image_thumb%5B7%5D.png?imgmax=800" width="571" height="484" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here is the Caching API’s Classes and Methods which we will be using in our code. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxdPrJyaI/AAAAAAAACXw/gN9x9LSCuzc/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxdUYwu1I/AAAAAAAACX0/fu5nD1pNlrI/image_thumb%5B2%5D.png?imgmax=800" width="1464" height="264" /&gt;&amp;#160;&lt;/a&gt;        &lt;p&gt;Here I am going to define the WCF Service which exposes two operations&amp;#160; GetAllAlbums and GetAllCustomers&amp;#160; &lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMTxdgow6fI/AAAAAAAACX4/zX0kdu-Cfv0/s1600-h/image%5B24%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TMTxeObEq9I/AAAAAAAACX8/99OKCo1DlWc/image_thumb%5B14%5D.png?imgmax=800" width="1024" height="634" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Here is the Caching Library implementation&lt;/p&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TMTxeb0b5AI/AAAAAAAACYA/94R7K3iLNfw/s1600-h/image%5B23%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxezqGn0I/AAAAAAAACYE/o_m-PeqjRPk/image_thumb%5B13%5D.png?imgmax=800" width="875" height="768" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxfL6dGoI/AAAAAAAACYI/dHPy2xgF7-8/s1600-h/image%5B31%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TMTxfV6eGeI/AAAAAAAACYM/ad5iL7rcDKc/image_thumb%5B19%5D.png?imgmax=800" width="874" height="543" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;using PowerShell Cmdlet we can verify our cache services&amp;#160; first let is check our Cache Host using&amp;#160; &lt;strong&gt;&lt;font size="5"&gt;“Get-CacheHost”&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TMTxfjYZwMI/AAAAAAAACYQ/B219y_vlI6I/s1600-h/image%5B35%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TMTxf4wl2jI/AAAAAAAACYU/_pDChs6CLys/image_thumb%5B21%5D.png?imgmax=800" width="644" height="214" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="5"&gt;Get-Cache&lt;/font&gt;&lt;/strong&gt; will displays the Cache Names &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMTxgPgi2_I/AAAAAAAACYY/wi_GljNU99U/s1600-h/image%5B43%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TMTxgQ0qI6I/AAAAAAAACYc/XIQSMAzt0Wo/image_thumb%5B25%5D.png?imgmax=800" width="644" height="191" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="5"&gt;Get-CacheStatistics&lt;/font&gt;&lt;/strong&gt; will give you the details about Cached item and Request Count etc..&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TMTxgnYTZQI/AAAAAAAACYg/_kRn_VZvd6c/s1600-h/image%5B39%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMTxgw3_JPI/AAAAAAAACYk/122h5DGREAA/image_thumb%5B23%5D.png?imgmax=800" width="644" height="271" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next Blog post we will see how to set Caching services in Web.config &lt;/p&gt;    &lt;p&gt;Nandri( Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3850287026393533683?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3850287026393533683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3850287026393533683' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3850287026393533683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3850287026393533683'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/10/using-appfabric-velocity-caching-api-in.html' title='Using AppFabric (Velocity) Caching API in WCF Service.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TMTxbuCbICI/AAAAAAAACXk/Y8NAUOtfycc/s72-c/image_thumb%5B5%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4947382563014915546</id><published>2010-10-23T21:16:00.001-05:00</published><updated>2010-10-23T21:19:36.075-05:00</updated><title type='text'>Windows Server AppFabric–Caching Service</title><content type='html'>&lt;p&gt;Windows AppFabric is set of technologies which offer to Hosting Services and Caching Services. In this blog post I am going show how to Install and Use&amp;#160; Caching Services. Windows AppFabric offers in memory caching with Distributed and Multi cluster supports .&lt;strong&gt; Windows AppFabric&amp;#160; aka “Velocity”.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;There is two way you can install Windows AppFabric &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;1) Using Microsoft Web installer[&lt;a title="http://www.microsoft.com/web/gallery/install.aspx?appsxml=http://www.microsoft.com/web/webpi/2.0/EnterpriseProductList.xml&amp;amp;appid=AppFabric" href="http://www.microsoft.com/web/gallery/install.aspx?appsxml=http://www.microsoft.com/web/webpi/2.0/EnterpriseProductList.xml&amp;amp;appid=AppFabric"&gt;http://www.microsoft.com/web/gallery/install.aspx?appsxml=http://www.microsoft.com/web/webpi/2.0/EnterpriseProductList.xml&amp;amp;appid=AppFabric&lt;/a&gt;]&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;2) You can download the bits from the following URL and Install &lt;a title="http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&amp;amp;FamilyID=467e5aa5-c25b-4c80-a6d2-9f8fb0f337d2" href="http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&amp;amp;FamilyID=467e5aa5-c25b-4c80-a6d2-9f8fb0f337d2"&gt;http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&amp;amp;FamilyID=467e5aa5-c25b-4c80-a6d2-9f8fb0f337d2&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Once you download and Run the Installer when you get to this screen where you will be configuring&amp;#160; Caching Service. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TMOW1P6eTjI/AAAAAAAACWc/UUpA60QWZYo/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW1hHxrrI/AAAAAAAACWg/1j_iucV2iG4/image_thumb%5B2%5D.png?imgmax=800" width="1019" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After installing you will the following Features added to IIS Manager &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMOXtVyG73I/AAAAAAAACXY/ZB031jD7nQA/s1600-h/image%5B38%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TMOXt3k3iaI/AAAAAAAACXc/nmsK3vsMYss/image_thumb%5B22%5D.png?imgmax=800" width="1030" height="315" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;First we need to set Caching Service Configuration provider here you have two options one is&amp;#160; XML provider another options is&amp;#160; SQL Server .&amp;#160; This is just to store Caching Services Details like how many machines (Servers) in the cluster and their port numbers as shown below.&amp;#160; I like to mention here one thing&amp;#160; Windows AppFabric services wont store any Cache data in Database. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW2DmrkWI/AAAAAAAACWk/brejySOmNME/s1600-h/image%5B13%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TMOW2U2A4fI/AAAAAAAACWo/Ip9E1SA0LZs/image_thumb%5B7%5D.png?imgmax=800" width="1027" height="406" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here I choose XML is my Service Configuration provider so the configuration file stored in Network file share . Once you successfully installed. we can verify the Installation of Caching Services.&amp;#160;&amp;#160; First Launch the&amp;#160; Power Shell Admin tool for Cache Services.&amp;#160; &lt;/p&gt;  &lt;p&gt;Now Type “Get-Cachehost” this command will tells the service Status .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TMOW2lOKPTI/AAAAAAAACWs/7rChHNLswfY/s1600-h/image%5B17%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW2834tFI/AAAAAAAACWw/GF9wIyyTZ18/image_thumb%5B9%5D.png?imgmax=800" width="644" height="214" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here I have created two CacheName&amp;#160; Ragavan &amp;amp; Sreeni&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW3LLbYGI/AAAAAAAACW0/s6E1jhz37TM/s1600-h/image%5B21%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TMOW3aQ50_I/AAAAAAAACW4/IluOSnLUcjE/image_thumb%5B11%5D.png?imgmax=800" width="644" height="214" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW3sPl1KI/AAAAAAAACW8/j1PU4UL8H_U/s1600-h/image%5B25%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW4LhnMeI/AAAAAAAACXE/TDfZ_Ybt1ow/image_thumb%5B13%5D.png?imgmax=800" width="644" height="248" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To got Help for&amp;#160; all Cmdlet you can type Get-Help * &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TMOW4cI3BfI/AAAAAAAACXI/y1clf-HGzCE/s1600-h/image%5B29%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TMOW4skduLI/AAAAAAAACXQ/y14PdOwi5S8/image_thumb%5B15%5D.png?imgmax=800" width="644" height="418" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next Blog post&amp;#160; we are going to use Caching API to store and retrieve data from Cache . &lt;/p&gt;  &lt;p&gt;Thanks (Nandri)&lt;/p&gt;  &lt;p&gt;Sreenivasa Ragavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4947382563014915546?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4947382563014915546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4947382563014915546' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4947382563014915546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4947382563014915546'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/10/windows-server-appfabriccaching-service.html' title='Windows Server AppFabric–Caching Service'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TMOW1hHxrrI/AAAAAAAACWg/1j_iucV2iG4/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6045421679772374555</id><published>2010-10-03T10:47:00.001-05:00</published><updated>2010-10-03T10:47:38.616-05:00</updated><title type='text'>MSDN Magazines</title><content type='html'>&lt;p&gt;I Like to read MSDN Monthly Magazine and having a digital copy&amp;#160; in locally makes me great.&amp;#160; If you feel the same way I do&amp;#160; please point your browser to the following URL and Download&amp;#160; &lt;strong&gt;&lt;font style="background-color: #ffff00"&gt;New and Old&lt;/font&gt;&lt;/strong&gt; Magazines&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a title="http://msdn.microsoft.com/en-us/magazine/ee412244.aspx" href="http://msdn.microsoft.com/en-us/magazine/ee412244.aspx"&gt;http://msdn.microsoft.com/en-us/magazine/ee412244.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TKilmGO1CZI/AAAAAAAACWU/vjIwN2Oo-Zg/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TKilmhksPCI/AAAAAAAACWY/3vWmlaqR-o0/image_thumb%5B1%5D.png?imgmax=800" width="599" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6045421679772374555?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6045421679772374555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6045421679772374555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6045421679772374555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6045421679772374555'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/10/msdn-magazines.html' title='MSDN Magazines'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TKilmhksPCI/AAAAAAAACWY/3vWmlaqR-o0/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-2969797260162405465</id><published>2010-09-17T12:50:00.001-05:00</published><updated>2010-09-17T12:50:41.524-05:00</updated><title type='text'>Building Windows  Phone  7  Application .</title><content type='html'>&lt;p&gt;In this blog Post I am going to build small Windows Phone Twitter Search Application . When we finish building then app this is how it looks&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqTuV9CYI/AAAAAAAACU8/AvqbFNzR9iQ/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJOqTzaNtPI/AAAAAAAACVA/lbJFi1vroOM/image_thumb%5B1%5D.png?imgmax=800" width="254" height="484" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here is the steps we are going to follow .&lt;/p&gt;  &lt;p&gt;1) Create VS.NET 2010&amp;#160; Windows Phone Application .&lt;/p&gt;  &lt;p&gt;2) Build XAML UI.&lt;/p&gt;  &lt;p&gt;3) We are going to parse that result using&amp;#160; LINQ TO XML.&lt;/p&gt;  &lt;p&gt;4) Write Button click Event handler which will execute the&amp;#160; Twitter Search API and&amp;#160; get the&amp;#160; ATOM format Result.&lt;/p&gt;  &lt;p&gt;5) Store the result in our Model&amp;#160; (Class which holds the&amp;#160; following properties Date published, Title, Image Uri).&lt;/p&gt;  &lt;p&gt;6) Bind to the&amp;#160; View.&lt;/p&gt;  &lt;p&gt;First&amp;#160; lets&amp;#160; create&amp;#160; a windows phone 7&amp;#160; Application project and&amp;#160; name it&amp;#160; TWAPP.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TJOqUZ0xeUI/AAAAAAAACVE/H4nRyY1UAWU/s1600-h/image%5B7%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJOqUpg23EI/AAAAAAAACVI/LiWP0XJDzXw/image_thumb%5B3%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The following&amp;#160; XAML code builds&amp;#160; Textbox and Search button&amp;#160; where&amp;#160; user enter&amp;#160; search string and click Search button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqVOqbjYI/AAAAAAAACVM/htGxXORIvZ0/s1600-h/image%5B13%5D.png"&gt;&lt;img style="border-bottom: ; border-left: ; margin: ; padding-left: ; padding-right: ; display: inline; border-top: ; border-right: ; padding-top: " title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJOqWNtQuPI/AAAAAAAACVQ/lT3dF-ZC8Dk/image_thumb%5B7%5D.png?imgmax=800" width="1024" height="183" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next&amp;#160; we are going&amp;#160; construct the XAML which shows the&amp;#160; user Search result . &lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TJOqWuof_4I/AAAAAAAACVU/vSf8WbQGr6I/s1600-h/image%5B18%5D.png"&gt;&lt;img style="border-bottom: ; border-left: ; margin: ; padding-left: ; padding-right: ; display: inline; border-top: ; border-right: ; padding-top: " title="image" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TJOqXPZq70I/AAAAAAAACVY/65LC_OGcc5M/image_thumb%5B10%5D.png?imgmax=800" width="1024" height="485" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is our&amp;#160; MODEL &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqXhgxbZI/AAAAAAAACVc/AZv2JKtr4R0/s1600-h/image%5B23%5D.png"&gt;&lt;img style="border-bottom: ; border-left: ; margin: ; padding-left: ; padding-right: ; display: inline; border-top: ; border-right: ; padding-top: " title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqYoJlavI/AAAAAAAACVg/4AYfz-y0lsQ/image_thumb%5B13%5D.png?imgmax=800" width="640" height="225" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqZCw3pkI/AAAAAAAACVk/OgRao1muZE8/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-bottom: ; border-left: ; margin: ; padding-left: ; padding-right: ; display: inline; border-top: ; border-right: ; padding-top: " title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TJOqZw6K8fI/AAAAAAAACVo/aNSOH4zkj4I/image_thumb%5B17%5D.png?imgmax=800" width="912" height="768" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;In Silverlight all calls to out side world is ASYNC.&amp;#160; Now we finished building the app and ready to compile and run .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqaVgeI_I/AAAAAAAACVs/8-lAuKmu6s8/s1600-h/image%5B39%5D.png"&gt;&lt;img style="border-bottom: ; border-left: ; margin: ; padding-left: ; padding-right: ; display: inline; border-top: ; border-right: ; padding-top: " title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJOqa5-lejI/AAAAAAAACVw/3wKYuSaGa3E/image_thumb%5B23%5D.png?imgmax=800" width="410" height="768" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now&amp;#160; enter the&amp;#160; some search string an click search button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TJOqbaKjG4I/AAAAAAAACV0/bH0BdgfKNpE/s1600-h/image%5B38%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJOqcHn7GOI/AAAAAAAACV4/hwQ0YLt4cPE/image_thumb%5B22%5D.png?imgmax=800" width="413" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-2969797260162405465?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/2969797260162405465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=2969797260162405465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2969797260162405465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2969797260162405465'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/09/building-windows-phone-7-application.html' title='Building Windows  Phone  7  Application .'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TJOqTzaNtPI/AAAAAAAACVA/lbJFi1vroOM/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1702341130007414823</id><published>2010-09-16T23:53:00.001-05:00</published><updated>2010-09-16T23:53:26.994-05:00</updated><title type='text'>MS  Windows  Phone 7 Developer Tool  RTM  Released today</title><content type='html'>&lt;p&gt;Today MS&amp;#160; Released&amp;#160; Windows Phone&amp;#160; Developer&amp;#160; Tool .&amp;#160; To&amp;#160; develop Windows Phone&amp;#160; 7&amp;#160; Apps.&lt;/p&gt;  &lt;p&gt;please point your Browser to&amp;#160; the following URL and Download the tool. &lt;a title="http://developer.windowsphone.com/windows-phone-7/" href="http://developer.windowsphone.com/windows-phone-7/"&gt;http://developer.windowsphone.com/windows-phone-7/&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TJL0Pdlyp1I/AAAAAAAACUk/-5GIRDg6dZM/s1600-h/image%5B8%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TJL0P6hcB0I/AAAAAAAACUo/13vxu2L3Wqs/image_thumb%5B6%5D.png?imgmax=800" width="640" height="337" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Windows Phone 7&amp;#160; Application different Project Templates.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJL0QamvTgI/AAAAAAAACUs/sCYdP21140I/s1600-h/image%5B12%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TJL0QncVjVI/AAAAAAAACUw/O_pGZnFNM9E/image_thumb%5B8%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;My First Windows Phone 7 App.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJL0RMacvKI/AAAAAAAACU0/E1-chaG3ggA/s1600-h/image%5B26%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJL0RYKLTJI/AAAAAAAACU4/mnUxhE0AFKQ/image_thumb%5B18%5D.png?imgmax=800" width="447" height="846" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1702341130007414823?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1702341130007414823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1702341130007414823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1702341130007414823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1702341130007414823'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/09/ms-windows-phone-7-developer-tool-rtm.html' title='MS  Windows  Phone 7 Developer Tool  RTM  Released today'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TJL0P6hcB0I/AAAAAAAACUo/13vxu2L3Wqs/s72-c/image_thumb%5B6%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1495388479914462361</id><published>2010-09-15T14:14:00.001-05:00</published><updated>2010-09-15T14:14:31.259-05:00</updated><title type='text'>MS Today Released  IE  9.0 Beta</title><content type='html'>&lt;p&gt;Here is the URL to Download&amp;#160; &lt;a title="http://windows.microsoft.com/en-US/internet-explorer/products/ie-9/home?os=win7&amp;amp;arch=b&amp;amp;browser=ie" href="http://windows.microsoft.com/en-US/internet-explorer/products/ie-9/home?os=win7&amp;amp;arch=b&amp;amp;browser=ie"&gt;http://windows.microsoft.com/en-US/internet-explorer/products/ie-9/home?os=win7&amp;amp;arch=b&amp;amp;browser=ie&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJEbEBstEUI/AAAAAAAACUU/u2s6-Fcu5iA/s1600-h/image%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJEbEggfI5I/AAAAAAAACUY/HEvU8eP7vWo/image_thumb%5B1%5D.png?imgmax=800" width="556" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;My&amp;#160; Blog browsed using IE&amp;#160; 9.0&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TJEbFI3IvYI/AAAAAAAACUc/JVd7mzmQCY4/s1600-h/image%5B7%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJEbFuWjPZI/AAAAAAAACUg/iJT0CTM3jTg/image_thumb%5B3%5D.png?imgmax=800" width="551" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1495388479914462361?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1495388479914462361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1495388479914462361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1495388479914462361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1495388479914462361'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/09/ms-today-released-ie-90-beta.html' title='MS Today Released  IE  9.0 Beta'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TJEbEggfI5I/AAAAAAAACUY/HEvU8eP7vWo/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8012085191012680401</id><published>2010-09-15T00:24:00.001-05:00</published><updated>2010-09-15T00:24:54.899-05:00</updated><title type='text'>How to Debug .NET Framework Source Code</title><content type='html'>&lt;p&gt;In this blog post I am going to show how to setup VS.NET Environment to step into .NET Framework source code. To do this exercise let us create small VS.NET Application and add some code which uses any of the .NET Framework Library Functions here I am using LINQ.&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TJBYe4lidHI/AAAAAAAACTY/gpthljGpXnQ/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYf5W_AXI/AAAAAAAACTc/cqmm8qq8Hdc/image_thumb%5B2%5D.png?imgmax=800" width="784" height="549" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p&gt;This below source code just returns the even numbers from integer array and prints into Console .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TJBYgV8WvDI/AAAAAAAACTg/kCDfLXfg7Xw/s1600-h/image%5B9%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TJBYhMmQfCI/AAAAAAAACTk/90Qc9QSSdY8/image_thumb%5B5%5D.png?imgmax=800" width="786" height="498" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Right click on the project and make sure you &lt;strong&gt;uncheck the&amp;#160; Enable the Visual Studio hosting process&lt;/strong&gt; option as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYhhgAu3I/AAAAAAAACTo/DQiTvfvrdOw/s1600-h/image%5B18%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TJBYidZ_ZRI/AAAAAAAACTs/P94uvG8h278/image_thumb%5B12%5D.png?imgmax=800" width="792" height="505" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now go to Tools option from main menu and select Options as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYjOgW8sI/AAAAAAAACTw/ohXk9aaOzoE/s1600-h/image%5B42%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJBYkM9fblI/AAAAAAAACT0/Nw5EUdAjxAw/image_thumb%5B26%5D.png?imgmax=800" width="383" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now set the options as shown below. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYkxy3kXI/AAAAAAAACT4/HZrJ4Os-reg/s1600-h/image%5B23%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TJBYl1HgNFI/AAAAAAAACT8/zCmmtQ9Vh8k/image_thumb%5B15%5D.png?imgmax=800" width="793" height="461" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYm5LLULI/AAAAAAAACUA/9iliYmfTcuc/s1600-h/image%5B30%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TJBYn23VZHI/AAAAAAAACUE/nRBU36q21SQ/image_thumb%5B20%5D.png?imgmax=800" width="791" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now press F11 and debug the app. ( First time you can see the Dialog windows which shows downloading the .NET Framework Symbol ) &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TJBYo_r0DTI/AAAAAAAACUI/XRRgAvI0Fpk/s1600-h/image%5B35%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TJBYpkNESqI/AAAAAAAACUM/DNKl9JdXuIc/image_thumb%5B23%5D.png?imgmax=800" width="790" height="429" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When I hover over evennumbers variable I could able to see the source code life for that&amp;#160; as shown above. Now we are able to debug the .NET Framework source code same we do with our Custom code. &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8012085191012680401?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8012085191012680401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8012085191012680401' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8012085191012680401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8012085191012680401'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/09/how-to-debug-net-framework-source-code.html' title='How to Debug .NET Framework Source Code'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/TJBYf5W_AXI/AAAAAAAACTc/cqmm8qq8Hdc/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1028732214623633104</id><published>2010-08-27T22:18:00.001-05:00</published><updated>2010-08-27T22:18:23.847-05:00</updated><title type='text'>Building Applications for  MS Touch devices using Microsoft® Surface® Toolkit for Windows Touch Beta</title><content type='html'>&lt;p&gt;To get started on this first go ahead and download the following&amp;#160; &lt;/p&gt;  &lt;h3&gt;Microsoft® Surface® Toolkit for Windows Touch Beta SDK&lt;/h3&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/downloads/details.aspx?FamilyID=801907A7-B2DD-4E63-9FF3-8A2E63932A74&amp;amp;amp;displaylang=en&amp;amp;displaylang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=801907A7-B2DD-4E63-9FF3-8A2E63932A74&amp;amp;amp;displaylang=en&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=801907A7-B2DD-4E63-9FF3-8A2E63932A74&amp;amp;amp;displaylang=en&amp;amp;displaylang=en&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Once you installed you will see the following Template .&amp;#160;&amp;#160; Building Application for&amp;#160; Surface devices is same as &lt;strong&gt;Building Windows WPF Application .&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/THh_9e0qwVI/AAAAAAAACSo/mZ2i1_SQ44k/s1600-h/image%5B4%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/THh_9-0DxNI/AAAAAAAACSs/Xy69zHjlyE8/image_thumb%5B2%5D.png?imgmax=800" width="1028" height="712" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;let is try creating sample application . Here I am going to use ScatterView control&lt;/p&gt;  &lt;p&gt;The &lt;b&gt;ScatterView&lt;/b&gt; control as a container for any other user interface (UI) element. When you place a UI element inside of a &lt;b&gt;ScatterView&lt;/b&gt; control, that element automatically gains the ability to be moved, rotated, and resized using one or multiple touches.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/THh_-LkRGTI/AAAAAAAACSw/eK5lw_HcdMQ/s1600-h/image%5B9%5D.png"&gt;&lt;img style="display: inline" title="image" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/THh_-tqLHII/AAAAAAAACS0/d3hkiO6MxTQ/image_thumb%5B5%5D.png?imgmax=800" width="1024" height="550" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is the Result for the above XAML code in&amp;#160; MS Surface Simulator &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/THh__PT_hkI/AAAAAAAACS4/9Jyl7-7PTXg/s1600-h/image%5B13%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/THh__92zIdI/AAAAAAAACS8/XsFPNSI7uYs/image_thumb%5B7%5D.png?imgmax=800" width="1028" height="616" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Please download MS Surface SDK and explore the more controls .&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1028732214623633104?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1028732214623633104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1028732214623633104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1028732214623633104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1028732214623633104'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/08/building-applications-for-ms-touch.html' title='Building Applications for  MS Touch devices using Microsoft® Surface® Toolkit for Windows Touch Beta'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/THh_9-0DxNI/AAAAAAAACSs/Xy69zHjlyE8/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1729074970586069172</id><published>2010-08-17T00:35:00.001-05:00</published><updated>2010-08-17T00:35:23.911-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VS.NET'/><title type='text'>VS.NET IDE Color Schemes</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Please click below link and get the color scheme &lt;/p&gt;  &lt;p&gt;&lt;a title="http://studiostyles.info/schemes/latest" href="http://studiostyles.info/schemes/latest"&gt;http://studiostyles.info/schemes/latest&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Here is some sample for view.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TGoflti8YJI/AAAAAAAACSg/xnFBzxu1760/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TGofmaAl4uI/AAAAAAAACSk/qdSCwskbm1Q/image_thumb%5B3%5D.png?imgmax=800" width="861" height="774" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasa Ragavan    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1729074970586069172?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1729074970586069172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1729074970586069172' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1729074970586069172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1729074970586069172'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/08/vsnet-ide-color-schemes.html' title='VS.NET IDE Color Schemes'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TGofmaAl4uI/AAAAAAAACSk/qdSCwskbm1Q/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3893406094832128697</id><published>2010-07-13T16:29:00.001-05:00</published><updated>2010-07-13T16:29:32.852-05:00</updated><title type='text'>Null-Coalesce operator (??) in C#</title><content type='html'>&lt;p&gt;In OOP Programming we often check for null values in our code&amp;#160; Here is the null-coalesce operator (??) comes in handy and can write very less code to check null.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TDzaur-UahI/AAAAAAAACSY/rWXMMEU1i90/s1600-h/image%5B6%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TDzavH-rQQI/AAAAAAAACSc/zbuDSPrD2Lo/image_thumb%5B4%5D.png?imgmax=800" width="723" height="338" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;R.SeenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3893406094832128697?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3893406094832128697/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3893406094832128697' title='13 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3893406094832128697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3893406094832128697'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/07/null-coalesce-operator-in-c.html' title='Null-Coalesce operator (??) in C#'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TDzavH-rQQI/AAAAAAAACSc/zbuDSPrD2Lo/s72-c/image_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>13</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4155525787296609563</id><published>2010-06-01T23:18:00.001-05:00</published><updated>2010-06-01T23:19:22.881-05:00</updated><title type='text'>To Know more about SharePoint 2010 Here is My Best Friend Blog</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1&gt;&lt;strong&gt;Real Experience&lt;/strong&gt;&amp;#160;&lt;/h1&gt;  &lt;h2&gt;http://myspexp.com/&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAXbhLFEtDI/AAAAAAAACSQ/IW1NNcVN__Q/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAXbh-GDjqI/AAAAAAAACSU/4LLNngivoSc/image_thumb%5B1%5D.png?imgmax=800" width="631" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4155525787296609563?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4155525787296609563/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4155525787296609563' title='12 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4155525787296609563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4155525787296609563'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/06/to-know-more-about-sharepoint-2010-here.html' title='To Know more about SharePoint 2010 Here is My Best Friend Blog'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/TAXbh-GDjqI/AAAAAAAACSU/4LLNngivoSc/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4348059420445947020</id><published>2010-05-29T21:18:00.001-05:00</published><updated>2010-05-29T21:24:40.367-05:00</updated><title type='text'>Silverlight 4.0 &lt;=WPF --ICommand</title><content type='html'>&lt;p&gt;Now Silverlight 4.0 Supports ICommand&amp;#160; Interface but not fully only two controls &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Button &lt;/li&gt;    &lt;li&gt;Hyperlink button. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;In Silverlight 4.0 the Button UI Element has to extra properties Command and CommandParamter.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAHK5PGUqkI/AAAAAAAACRU/q1vyi8R-Byc/s1600-h/image%5B14%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAHK5asjQQI/AAAAAAAACRY/G885PeXmaB8/image_thumb%5B6%5D.png?imgmax=800" width="494" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here i am going to show simple example using ICommand Interface in Silverlight 4.0.&lt;/p&gt;  &lt;p&gt;First create a Silverlight application.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAHK5t5QCRI/AAAAAAAACRc/ukva2PQMuwk/s1600-h/image%5B6%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAHK6WPfsiI/AAAAAAAACRk/wE_7j0eGmq4/image_thumb%5B2%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now we need to Add Class file to the project and Implement the &lt;strong&gt;ICommand&lt;/strong&gt; Interface. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAHK6ok9ezI/AAAAAAAACRo/2GmsBAaPD48/s1600-h/image%5B19%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAHK7J7B73I/AAAAAAAACRs/AzbRWFoOI3Y/image_thumb%5B9%5D.png?imgmax=800" width="857" height="768" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here the above code we are checking if user did not enter anything in textbox we are not executing the command . If He /She enters something and click button we will display the Entered Text in MessageBox. &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Now lets Add XAML code to create Simple UI .&amp;#160; Here i am adding one Textbox and Button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAHK7UVgLUI/AAAAAAAACRw/SC9MbxN8LX0/s1600-h/image%5B27%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAHK79HCMWI/AAAAAAAACR0/m3Z2HSpILL4/image_thumb%5B15%5D.png?imgmax=800" width="877" height="273" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now lets do the Binding (wire up) our Command class to this UI.&amp;#160; Here i am doing Element to Element data binding. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAHK8Do1yXI/AAAAAAAACR4/lKsOu0bpElA/s1600-h/image%5B35%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAHK80kqCII/AAAAAAAACR8/uhAFE8VSvaA/image_thumb%5B21%5D.png?imgmax=800" width="886" height="468" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Note:&lt;/p&gt;  &lt;p&gt;I do not have any code in CodeBehind in MainPage.Xmal.cs for the Button Click.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAHMVG6dsjI/AAAAAAAACSI/dvjtVSH2I18/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAHMVbVRAoI/AAAAAAAACSM/4xUu1KIGzlo/image_thumb%5B1%5D.png?imgmax=800" width="455" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now run the application and click Execute Command Button and see what is happening after that put some text in text box and click it now the message box displayed the text which you entered.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAHK9y1j8KI/AAAAAAAACSA/09n5JCpyMGo/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAHK-OpIh5I/AAAAAAAACSE/gYttvpWID-U/image_thumb%5B26%5D.png?imgmax=800" width="644" height="442" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenviasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4348059420445947020?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4348059420445947020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4348059420445947020' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4348059420445947020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4348059420445947020'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/silverlight-40-icommand.html' title='Silverlight 4.0 &amp;lt;=WPF --ICommand'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/TAHK5asjQQI/AAAAAAAACRY/G885PeXmaB8/s72-c/image_thumb%5B6%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7032163960182299053</id><published>2010-05-29T16:59:00.001-05:00</published><updated>2010-05-29T16:59:22.016-05:00</updated><title type='text'>Enabling OData Endpoint When Creating WCF-RIA Services</title><content type='html'>&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brada/WindowsLiveWriter/Silverlight4RIAServicesReadyforBusinessE_148C8/image_23.png"&gt;&lt;img title="image" border="0" alt="image" align="left" src="http://blogs.msdn.com/blogfiles/brada/WindowsLiveWriter/Silverlight4RIAServicesReadyforBusinessE_148C8/image_thumb.png" width="146" height="52" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/brada/WindowsLiveWriter/Silverlight4RIAServicesReadyforBusinessE_148C8/image_23.png"&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; When you create a WCF RIA Service using VS.NET 2010 we can easily enable&lt;strong&gt; OData endpoint&lt;/strong&gt; as well.&amp;#160; This can be done just clicking Check-Box. First let see in Action. First create a silverlight application and do not forgot to check Enable WCF RIA Service Check-Box as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAGOIN0nDjI/AAAAAAAACQU/tWkESC4faHs/s1600-h/image%5B7%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAGOImHRQ6I/AAAAAAAACQY/KHkmxUcmVCs/image_thumb%5B3%5D.png?imgmax=800" width="462" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Next we need to add/Create Model which will&amp;#160; expose via WCF-RIA Services. We can create Model using EF or LINQ to SQL .&amp;#160; Once you create the model just compile the project so that VS.NET IDE knows the changes we made to our project. (This compilation needed to show Entity&amp;#160; when we create RIA services ). &lt;/p&gt;  &lt;p&gt;Next step is to Add Domain Data Service template to our project so that we can create WCF RIA Services .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAGOJAmPVzI/AAAAAAAACQc/ldi7osLrbOk/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAGOJcsWzII/AAAAAAAACQg/didmEYxoI-8/image_thumb%5B9%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&amp;#160; &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;&lt;/p&gt;    &lt;p&gt;If you see the below dialog&amp;#160; box we have an options to check and expose the OData Endpoint.&amp;#160; &lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAGOJnB5SYI/AAAAAAAACQk/mfmErPX2DGs/s1600-h/image%5B24%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAGOKMboGQI/AAAAAAAACQo/8MDMzLCOjf4/image_thumb%5B14%5D.png?imgmax=800" width="631" height="772" /&gt;&lt;/a&gt; &lt;/p&gt;    &lt;p&gt;When you check the Expose OData endpoint Check-Box the following changes were made to your project.(Web Project).&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;1) The following OData endpoint added to your web.config file&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAGOLY7Iy6I/AAAAAAAACQs/ewQJb7av1CY/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAGOLuOwrCI/AAAAAAAACQw/n_9U-l1plKs/image_thumb%5B17%5D.png?imgmax=800" width="640" height="193" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;    &lt;p&gt;&lt;strong&gt;2) Next on&amp;#160; each paramaterless query methods&amp;#160; marked [Query[IsDefault=true)]&amp;#160; attribute&lt;/strong&gt; &lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAGOL0PjZ8I/AAAAAAAACQ0/BZFEotucDD0/s1600-h/image%5B34%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAGOMW-pCkI/AAAAAAAACQ4/gcDeZlL3zMU/image_thumb%5B20%5D.png?imgmax=800" width="640" height="271" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;That is it now compile the project and browse the endpoints from IE. Here WCF RIA Services are created @ runtime you do not find&amp;#160; .SVC file&amp;#160; ( it is created by virtual provider). To access WCF RIA SERVICE and OData Endpoint&amp;#160; here is the URL format which we need to construct .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ServerName:portnumber/Projectname-DomainService.svc"&gt;http://ServerName:portnumber/Projectname-DomainService.svc&lt;/a&gt;.&amp;#160; in my case i am running @ local machine so the WCF RIA SERVICE Endpoint is &lt;/p&gt;  &lt;p&gt;&lt;a title="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc" href="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc"&gt;http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAGOMtPyeXI/AAAAAAAACQ8/IqxXsfz5SA4/s1600-h/image%5B38%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAGOMxnZB3I/AAAAAAAACRA/OugQ6zLMKV8/image_thumb%5B22%5D.png?imgmax=800" width="644" height="425" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;and OData Endpoint is &lt;a title="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc" href="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc/OData/"&gt;http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc/OData/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAGONXPiNtI/AAAAAAAACRE/ha06vLmHg2s/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAGONnEdGiI/AAAAAAAACRI/paUIyQVqk5k/image_thumb%5B24%5D.png?imgmax=800" width="644" height="425" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;if you browse &lt;a title="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc/OData/ProductCategorySet" href="http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc/OData/ProductCategorySet"&gt;http://localhost:61411/ExposeOdataWebApplication-AWDomainService.svc/OData/ProductCategorySet&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAGON_ThSJI/AAAAAAAACRM/-XDd2eQ-xXk/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAGOOdMtphI/AAAAAAAACRQ/a0cf4deFnms/image_thumb%5B26%5D.png?imgmax=800" width="644" height="425" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7032163960182299053?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7032163960182299053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7032163960182299053' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7032163960182299053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7032163960182299053'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/enabling-odata-endpoint-when-creating.html' title='Enabling OData Endpoint When Creating WCF-RIA Services'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TAGOImHRQ6I/AAAAAAAACQY/KHkmxUcmVCs/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1265979347980518515</id><published>2010-05-29T14:58:00.001-05:00</published><updated>2010-05-29T14:58:14.098-05:00</updated><title type='text'>Exposing Data using OData protocol and Consuming it using Excel [Power Pivot]</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;MS Renamed&amp;#160; ADO.NET Data Service =&amp;gt; WCF Data Service this service exposed using OData Protocol&amp;#160; OData means Open Data protocol . here is the some of the MS products uses this OData including: &lt;strong&gt;SharePoint 2010 (Lists), SQL Server 2008 R2, PowerPivot, Windows Azure Table Storage&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;First Create ASP.NET Empty Web application project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxsOYHLAI/AAAAAAAACOs/BFw0X8phLZw/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxsXD-q-I/AAAAAAAACOw/YAhEkFVy2NE/image_thumb%5B5%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now we need to add or create our Model Here i am going to use LINQ to SQL. We can use ADO.NET Entity Data Model as well. Now Select LINQ to SQL Classes template and add to our ASP.NET project. LINQ To SQL Template provides Designer surface where you can drag and drop the DB tables which you wanted to expose as WCF Data Services ( OData).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxs_UZmeI/AAAAAAAACO0/uJ8nMe3zpXw/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxtenW46I/AAAAAAAACO4/ngytl6Zw9_k/image_thumb%5B6%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once Model is created next we need to WCF Data Service template to our project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAFxttaESDI/AAAAAAAACO8/SoxhXEZhLhE/s1600-h/image%5B20%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAFxuFet7LI/AAAAAAAACPA/Y9mqeJsk8HA/image_thumb%5B10%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Next we need to open WCFdataService1.cs file and Add our LINQ TO SQL DataContext class&amp;#160; and Edit the SetEinittySetAccessRule config .&lt;/p&gt;  &lt;p&gt;Here i wanted to expose all the Entity so i provided *. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAFxubpUcSI/AAAAAAAACPE/VgJWFCWmrfs/s1600-h/image%5B23%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAFxu0j2yJI/AAAAAAAACPI/BITWjdA0pLw/image_thumb%5B13%5D.png?imgmax=800" width="640" height="278" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now compile the project and Browse the .SVC &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxvOp4ufI/AAAAAAAACPM/FsGm9Jmx1hg/s1600-h/image%5B27%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAFxvvK0WpI/AAAAAAAACPQ/0e4GkHl1sOA/image_thumb%5B15%5D.png?imgmax=800" width="644" height="453" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here below query shows how to access all the records from Departments.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxvzhpPAI/AAAAAAAACPU/EThMAyTDIT4/s1600-h/image%5B22%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxwZMGzjI/AAAAAAAACPY/PsU01f1E3iM/image_thumb%5B12%5D.png?imgmax=800" width="644" height="425" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now we have successfully exposed our WCF Data Service (OData) . Next we will consume this Data service from Excel using &lt;strong&gt;Power Pivot&lt;/strong&gt; Add-in. first we need to download Power Pivot and install. &lt;/p&gt;  &lt;p&gt;Now fire up Excel 2010 you will see Power Pivot Ribbon tab click that.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAFxwrl0GQI/AAAAAAAACPc/-WBUQtipJ4M/s1600-h/image%5B38%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxxMHTo9I/AAAAAAAACPg/vUPNl-seaqY/image_thumb%5B20%5D.png?imgmax=800" width="1028" height="109" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; Next Click &lt;strong&gt;Power Pivot&lt;/strong&gt; window and click &lt;strong&gt; From Data Feeds&lt;/strong&gt; ( Our services expose Atom pub) &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxxs0CqmI/AAAAAAAACPk/k4Af6TbOKFM/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/TAFxx6jH8PI/AAAAAAAACPo/j4Ya7rVpv94/image_thumb%5B22%5D.png?imgmax=800" width="644" height="138" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Next Edit friendly name for your Data Feed and provide the Data Feed URL in my case the service is Hosted and running in my local box so my URL will be &lt;a title="http://localhost:61411/WcfDataService1.svc" href="http://localhost:61411/WcfDataService1.svc"&gt;http://localhost:61411/WcfDataService1.svc&lt;/a&gt;. to verify the service is running&amp;#160; you can click Test Connection button and check.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxyPsv_5I/AAAAAAAACPs/tVWHzaCyvKw/s1600-h/image%5B49%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxyVMzDkI/AAAAAAAACPw/i-Krn-owGms/image_thumb%5B25%5D.png?imgmax=800" width="473" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once you have done that then click next . at this point Excel power pivot connects&amp;#160; service&amp;#160; and gets all Data.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/TAFxypibzBI/AAAAAAAACP0/6oZkUmACcL4/s1600-h/image%5B58%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxzFf_ukI/AAAAAAAACP4/1DOhq7Dqf9c/image_thumb%5B30%5D.png?imgmax=800" width="473" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Next select the Tables you wanted to import and click Finish .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/TAFxzWBC1_I/AAAAAAAACP8/p4bsPpjP-J0/s1600-h/image%5B62%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxzgPSttI/AAAAAAAACQA/9JGmiIqOdLQ/image_thumb%5B32%5D.png?imgmax=800" width="473" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here is the final result .it tells how may rows are in each tables.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/TAFxzx0tYhI/AAAAAAAACQE/5Qod0WVDGdM/s1600-h/image%5B66%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/TAFx0HEViXI/AAAAAAAACQI/yuP9gfxbm7U/image_thumb%5B34%5D.png?imgmax=800" width="473" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now we have all the Data in Excel . Since most of them knows how to work on excel&amp;#160; they can do all BI related stuff.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/TAFx0w2vHVI/AAAAAAAACQM/p-XQ0ucKfyw/s1600-h/image%5B70%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/TAFx1YfzRcI/AAAAAAAACQQ/Ck8P9QzV4u0/image_thumb%5B36%5D.png?imgmax=800" width="644" height="420" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You can do all Filter , sorting etc… &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1265979347980518515?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1265979347980518515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1265979347980518515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1265979347980518515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1265979347980518515'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/exposing-data-using-odata-protocol-and.html' title='Exposing Data using OData protocol and Consuming it using Excel [Power Pivot]'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/TAFxsXD-q-I/AAAAAAAACOw/YAhEkFVy2NE/s72-c/image_thumb%5B5%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3920243898814495355</id><published>2010-05-28T02:47:00.001-05:00</published><updated>2010-05-28T02:50:55.833-05:00</updated><title type='text'>MVVM –Model-View-ViewModel Design Pattern</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;&lt;strong&gt;Design Patterns:&lt;/strong&gt; In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn't a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations.&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;What is MVVM?&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;It’s an architectural pattern created by &lt;strong&gt;John Gossman&lt;/strong&gt; from WPF team.&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;MVVM is Model-View-ViewModel Design pattern .But this is different from Common Design pattern which is created by GOF (Gang&amp;#160; Of Four) The four authors were &lt;a href="http://en.wikipedia.org/wiki/Erich_Gamma"&gt;Erich Gamma&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Richard_Helm"&gt;Richard Helm&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Ralph_Johnson"&gt;Ralph Johnson&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/John_Vlissides"&gt;John Vlissides&lt;/a&gt;.&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;M&lt;/font&gt;&lt;/strong&gt;odel =&amp;gt; Holds the Data.&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;V&lt;/strong&gt;&lt;/font&gt;iew =&amp;gt; Presents/Shows the Data.&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;V&lt;/font&gt;&lt;/strong&gt;iew&lt;strong&gt;&lt;font color="#ff0000"&gt;M&lt;/font&gt;&lt;/strong&gt;odel =&amp;gt;Holds the Models which is Presented/Showed in a View.&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font size="4"&gt;When we are building WPF or Silverlight applications is better to use MVVM pattern because this pattern offers the following benefits.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;Testability ( ViewModel is easier to unit test than code-behind or event driven code)&lt;/font&gt;&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;Clear separation between UX designer and developer&lt;/font&gt;&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;Increases the &amp;quot;Blend ability&amp;quot; of your view&lt;/font&gt;&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;Model never needs to be changed to support changes to the view&lt;/font&gt;&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;ViewModel rarely needs to be changed to support changes to the view&lt;/font&gt;&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;&lt;font face="Arial Black"&gt;No duplicated code to update views&lt;/font&gt;&lt;/em&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font size="4"&gt;The Important is&amp;#160; MVVM&amp;#160; makes uses of&amp;#160; Silverlight &amp;amp; WPF &lt;strong&gt;Binding&lt;/strong&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_9097keElI/AAAAAAAACNU/bVS-OjoSJAA/s1600-h/image%5B94%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_90-noJg5I/AAAAAAAACNY/4OSCwmNLXcs/image_thumb%5B68%5D.png?imgmax=800" width="538" height="768" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Here I am going to show how to use MVVM pattern when building Silverlight application. Here i am not going to use any framework tooling. Here is the workflow I am going to follow.&lt;/font&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;font size="4"&gt;Create a Silverlight Application.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Create Model, View,ViewModel Folders.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Add or Create a Model class with some properties . Here I am going to create Custom class. ( we can use EF , WCF&amp;#160; etc..).&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Implements INotifyPropertyChanged Interface.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Create ViewModelBase and ViewModel Classes.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Create a View.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Do the Binding.&lt;/font&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font size="4"&gt;First Fire up VS.NET 2010 and Create a Silverlight Application Project.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_90_PNzXdI/AAAAAAAACNc/ed9mnv8HteI/s1600-h/image%5B13%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_90_c4l0QI/AAAAAAAACNk/Vp5nRduKzlk/image_thumb%5B9%5D.png?imgmax=800" width="774" height="545" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Once project is created now we need to add the following&amp;#160; Model , View , ViewModel folders as shown below.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_90_-NFNcI/AAAAAAAACNo/oW4jDdjkdGw/s1600-h/image%5B12%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_91AU2U2GI/AAAAAAAACNs/tShlWc1_oAc/image_thumb%5B8%5D.png?imgmax=800" width="345" height="486" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now we need to create Model. To do that right click on Model Folder and Add the class called UserProfile and add the following public properties as shown below.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_91AlJtXDI/AAAAAAAACNw/ESV_h9UZzUw/s1600-h/image%5B73%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_91AxocZbI/AAAAAAAACN0/l4NadrS6ZHc/image_thumb%5B53%5D.png?imgmax=800" width="640" height="250" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now right click on ViewModel folder and add the following classes.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;This viewModelbase class just implements the INotifyPropertyChanged Interface this way both source and Target objects are in Sync.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_91BUtwg0I/AAAAAAAACN4/GE5TLIyRgtg/s1600-h/image%5B72%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_91BoObNvI/AAAAAAAACN8/hDthWpEP0dI/image_thumb%5B52%5D.png?imgmax=800" width="640" height="214" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;The ObservableCollection class automatically implements&amp;#160; INotifyPropertyChanged Interface.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_91B26ndVI/AAAAAAAACOA/P_n1Nqxuk1E/s1600-h/image%5B71%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_91CBBhWjI/AAAAAAAACOE/pSnNIzhzieE/image_thumb%5B51%5D.png?imgmax=800" width="640" height="304" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now right click on View Folder and add the Silverlight Usercontrol name it as UserProfileView.XAML And add the following XAML code&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_91CRmCh1I/AAAAAAAACOI/TwkKeKMvMwM/s1600-h/image%5B70%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_91CtwuGdI/AAAAAAAACOM/y1jZbqmj8co/image_thumb%5B50%5D.png?imgmax=800" width="914" height="304" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;And add the following code in the UserProfileView.XAML code behind.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_91C-Q7WTI/AAAAAAAACOQ/TmfoS-b2cI4/s1600-h/image%5B69%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_91DQ0G6JI/AAAAAAAACOU/fT603uLPNsA/image_thumb%5B49%5D.png?imgmax=800" width="1024" height="640" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Here i am creating 100 user profiles and adding to ObervableCollection and setting to UserProfileViewModel class and setting Datacontext.&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_91D_CrZ6I/AAAAAAAACOY/eVxbTadaZMc/s1600-h/image%5B78%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_91EdgKW4I/AAAAAAAACOc/67_RqBN7cHE/image_thumb%5B56%5D.png?imgmax=800" width="1024" height="422" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_91EuH9UhI/AAAAAAAACOg/EuIRALiJ3_8/s1600-h/image%5B82%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_91EzzH_BI/AAAAAAAACOk/OOuR0ecHRN0/image_thumb%5B58%5D.png?imgmax=800" width="644" height="425" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I hope i explained MVVM pattern very simple and everyone can understand easily . Here i used Properties binding even we can use ICommand as well&amp;#160; (Silverlight 4.0). I am happy to answer this blog readers questions. &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3920243898814495355?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3920243898814495355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3920243898814495355' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3920243898814495355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3920243898814495355'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/mvvm-model-view-viewmodel-design.html' title='MVVM –Model-View-ViewModel Design Pattern'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S_90-noJg5I/AAAAAAAACNY/4OSCwmNLXcs/s72-c/image_thumb%5B68%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8077178278103394094</id><published>2010-05-27T19:30:00.001-05:00</published><updated>2010-05-27T19:30:34.422-05:00</updated><title type='text'>My Article Published on DIWUG SharePoint Magazine.</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Please download the second issue of SharePoint eMagazine. @ &lt;a title="http://information-worker.org/freemagazine.aspx" href="http://information-worker.org/freemagazine.aspx"&gt;http://information-worker.org/freemagazine.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;My Article Title is Incorporating External Data in SharePoint 2010 using WCF - &lt;a href="http://mstecharchitect.blogspot.com/"&gt;Raghavan Ramadurai&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_8OpgXn-6I/AAAAAAAACNM/BTNG6YZZm4U/s1600-h/image%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_8OqZgLF2I/AAAAAAAACNQ/8Tzwv1GUoNM/image_thumb%5B2%5D.png?imgmax=800" width="825" height="772" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8077178278103394094?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8077178278103394094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8077178278103394094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8077178278103394094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8077178278103394094'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/my-article-published-on-diwug.html' title='My Article Published on DIWUG SharePoint Magazine.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S_8OqZgLF2I/AAAAAAAACNQ/8Tzwv1GUoNM/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7977361748915928816</id><published>2010-05-27T19:25:00.001-05:00</published><updated>2010-05-27T19:25:14.154-05:00</updated><title type='text'>Printing In Silverlight 4.0</title><content type='html'>&lt;p&gt;In silverlight 4.0 the main API for printing is &lt;strong&gt;PrintDocument&lt;/strong&gt; class which lives in &lt;strong&gt;System.Windows.Printing&lt;/strong&gt; namespace. Here are the steps we need to do&amp;#160; for a Printing.&lt;/p&gt;  &lt;p&gt;1) First Create instance of&amp;#160; &lt;strong&gt;PrintDocument&lt;/strong&gt; class.&lt;/p&gt;  &lt;p&gt;2) Next Implement the &lt;strong&gt;PrintPage&lt;/strong&gt; event handler and&amp;#160; Set &lt;strong&gt;PageVisual&lt;/strong&gt; to the UIElement you want to print. &lt;/p&gt;  &lt;p&gt;3)&amp;#160; Finally call &lt;strong&gt;Print()&lt;/strong&gt; method.&lt;/p&gt;  &lt;p&gt;This is very easy way to print this is same as screen printing.&lt;/p&gt;  &lt;p&gt;let see in action&lt;/p&gt;  &lt;p&gt;First Create Silverlight application project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_8NSYu9KDI/AAAAAAAACMc/hQKHwm6Wfk0/s1600-h/image3.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_8NTa_bQHI/AAAAAAAACMg/ctAMZ_LIxBI/image_thumb1.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;In the Next Dialog box we just say click OK .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_8NUKzwkII/AAAAAAAACMk/XmNaUbAD8iw/s1600-h/image7.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_8NVAAt8kI/AAAAAAAACMo/-sL-0ySwGxw/image_thumb3.png?imgmax=800" width="607" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;now lets add some XAML code to build UI with some Text and try to print them.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_8NWDjWLzI/AAAAAAAACMs/KHVvgAPLgWI/s1600-h/image13.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_8NW3k5OuI/AAAAAAAACMw/iVvvQ2UIdNI/image_thumb7.png?imgmax=800" width="1044" height="324" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here is my GUI with some sample Contact Lists.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_8NX_GRnZI/AAAAAAAACM0/1GzQd-9eZbk/s1600-h/image18.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_8NY7sa-wI/AAAAAAAACM4/lerkm8L5foY/image_thumb10.png?imgmax=800" width="1028" height="675" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Event handler to handle Printpage event.&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here i am&amp;#160; using Lambda Expression (C# 3.0)&amp;#160; basically the down rectangle code replaced by the above Rectangle&amp;#160; Lambda Expression.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_8NZYhEadI/AAAAAAAACM8/98UvkYA187I/s1600-h/image30.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_8NZ6NL8MI/AAAAAAAACNA/-s6pScQhhis/image_thumb18.png?imgmax=800" width="1049" height="300" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_8NaPIRokI/AAAAAAAACNE/w8rdBWBO0vU/s1600-h/image29.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_8NaYX8BBI/AAAAAAAACNI/aB2bsWfDQ8U/image_thumb17.png?imgmax=800" width="1042" height="328" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7977361748915928816?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7977361748915928816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7977361748915928816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7977361748915928816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7977361748915928816'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/printing-in-silverlight-40.html' title='Printing In Silverlight 4.0'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S_8NTa_bQHI/AAAAAAAACMg/ctAMZ_LIxBI/s72-c/image_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1005428502505304422</id><published>2010-05-20T00:34:00.001-05:00</published><updated>2010-05-20T00:34:41.997-05:00</updated><title type='text'>Developing Master/Details Application In SilverLight</title><content type='html'>&lt;p&gt;In this Blog post I am going to show how to create a Silverlight application Master/Details Records display. First Open of the VS.NET 2010 and create Silverlight application project.&lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt;Creating a SilverLight Application Project &lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJtZlZWUI/AAAAAAAACLE/uwjSXGtHeuw/s1600-h/image%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJuYdXEDI/AAAAAAAACLI/fgUn2vaL5V8/image_thumb%5B2%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; In this application we are going to use WCF RIA services to bring Data from Backend so we need to check the&amp;#160; Enable WCF RIA Services Check-Box. and then click ok. &lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt;Enabling WCF RIA Services&lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_TJvVas9nI/AAAAAAAACLM/160db3TPkRs/s1600-h/image%5B52%5D%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image[52]" border="0" alt="image[52]" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJwztLvoI/AAAAAAAACLQ/QaBfvz5mSD4/image%5B52%5D_thumb%5B1%5D.png?imgmax=800" width="604" height="484" /&gt;&lt;/a&gt;   &lt;blockquote&gt;   &lt;p&gt;At this point VS.NET will created two projects.&amp;#160; One is Silverlight Client application project and another one Web application project as shown below.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJxKdkNII/AAAAAAAACLU/Hr5dNBZqEj8/s1600-h/image%5B51%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_TJxz7MPlI/AAAAAAAACLY/d7Ic7ccKWUo/image_thumb%5B31%5D.png?imgmax=800" width="355" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt;Adding EF Model &lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;Now we need to add Data Model to our project. Here we can use either &lt;strong&gt;LINQ TO SQL&lt;/strong&gt; or &lt;strong&gt;EF&lt;/strong&gt;. But I am going to use&amp;#160; EF Data Model Template&lt;strong&gt;. so let us add&amp;#160; ADO.NET Enitity Data Model template to&lt;/strong&gt; this project and follow the Wizard.     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_TJyZcidQI/AAAAAAAACLc/iZr53WIZxKQ/s1600-h/image%5B13%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJy73rFfI/AAAAAAAACLg/GIP2_-wVdtU/image_thumb%5B7%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Here I am going to use Chinook Sample Database which you can download from CodePlex. Next we are going to select an option Generate From Database and create the EF Model.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJzXgDDkI/AAAAAAAACLk/FcpFYGkELaY/s1600-h/image%5B17%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_TJz8SAaOI/AAAAAAAACLo/JLgjfc-T3Ak/image_thumb%5B9%5D.png?imgmax=800" width="543" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once EF Model created successfully at this point we need to compile or build our project so that VS.NET will get latest changes or additions that we made&amp;#160; in our solution. This build process helps to choose Entities when we are creating Domain Service.&amp;#160; &lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt;Adding Domain Service Class &lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;Now we need to add Domain Service template to our project to create WCF RIA Service. Here we asked to select the Entities which we wanted to exposes to client side and can perform CURD operations . having said that Here I am selecting all Entities and also enabling editing option as shown below. And do not forgot to check the options which will Generate metadata for our EF classes.&amp;#160;&amp;#160; &lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJ0uegU9I/AAAAAAAACLs/0IemvY4s5WY/s1600-h/image%5B64%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_TJ1bw-5iI/AAAAAAAACLw/1IF3U7c_-ZA/image_thumb%5B36%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJ1lxOiYI/AAAAAAAACL0/9GMZcFG30Gc/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJ2VRPtsI/AAAAAAAACL4/Yy8KdX6Z3cU/image_thumb%5B17%5D.png?imgmax=800" width="553" height="645" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Now once again we need to compile or build the project at this point VS.NET generate &lt;strong&gt;DomainContext&lt;/strong&gt; and &lt;strong&gt;Entities&lt;/strong&gt; on client side. (WCF RIA Service tool magic).&lt;/p&gt;  &lt;p align="justify"&gt;&amp;#160; Here we need to add some UI to display Customer and their Invoices. To do click on Data Sources and right click on Customer and select DataGrid and drag and drop it on&amp;#160; Mainpage.xmal Designer surface. do the same steps for Invoices as well.&amp;#160; At this point we have two Datagird. Here whenever user select customer Record we need to display related invoices in another DataGrid called Customer Invoices.&lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt; Creating UI &lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_TJ3H7jbqI/AAAAAAAACL8/cbIDjjchdAI/s1600-h/image%5B60%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJ3g8GzzI/AAAAAAAACMA/I5XwCDI3Uq4/image_thumb%5B34%5D.png?imgmax=800" width="1028" height="525" /&gt;&lt;/a&gt;   &lt;h2&gt;&amp;#160;&lt;/h2&gt;  &lt;h2&gt;&amp;#160;&lt;font style="background-color: #ffff00"&gt; Adding [Include Attribute]&lt;/font&gt;&lt;/h2&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; To bring right data from backend we need to modify our Entity Metadata class as shown below.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJ4Y81J0I/AAAAAAAACME/gJ3X7-UmeAY/s1600-h/image%5B41%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJ4-Uh5aI/AAAAAAAACMI/YmoIwPna7OI/image_thumb%5B25%5D.png?imgmax=800" width="567" height="768" /&gt;&lt;/a&gt;   &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here I have added another method which will returns both Customer and their invoices records .&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_TJ5REUf6I/AAAAAAAACMM/A6mNIulTDI8/s1600-h/image%5B47%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_TJ5tJ_GkI/AAAAAAAACMQ/-w5Sh5nL1J4/image_thumb%5B29%5D.png?imgmax=800" width="640" height="225" /&gt;&lt;/a&gt;   &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160; Now build the project and Run . Now if we select a record or row in Customer DataGrid the related invoices records are displayed&amp;#160; in Customer Invoices datagrid.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_TJ7QmdccI/AAAAAAAACMU/k10WA4FA-Eg/s1600-h/image%5B35%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_TJ8Uob2RI/AAAAAAAACMY/rc1TyHVd2GA/image_thumb%5B21%5D.png?imgmax=800" width="644" height="380" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Next blog post will see how to Add Busy Indicator when loading Data, Sorting and Grouping of the Data.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1005428502505304422?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1005428502505304422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1005428502505304422' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1005428502505304422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1005428502505304422'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/developing-masterdetails-application-in.html' title='Developing Master/Details Application In SilverLight'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S_TJuYdXEDI/AAAAAAAACLI/fgUn2vaL5V8/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4338599743151468979</id><published>2010-05-18T22:59:00.001-05:00</published><updated>2010-05-18T22:59:46.774-05:00</updated><title type='text'>Building SilverLight Application using WCF RIA Services.</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;&lt;font style="background-color: #ffff00"&gt;WCF RIA Services. &lt;/font&gt;&lt;/h2&gt;  &lt;p&gt;In Silverlight project you can turn on WCF RIA Services Link. This WCF RIA Services link connects Silverlight client Application and Web Project. &lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_NhxNomVwI/AAAAAAAACJY/retyDK24BOo/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_Nhx99YbrI/AAAAAAAACJc/gckicAw7ZBc/image_thumb%5B8%5D.png?imgmax=800" width="593" height="480" /&gt;&lt;/a&gt;  &lt;p&gt;WCR RIA Service simplify the N-tier development and it allow to share &lt;strong&gt;Data model&lt;/strong&gt;, &lt;strong&gt;Validation Rules&lt;/strong&gt; and other &lt;strong&gt;Data annotations&lt;/strong&gt; across tiers. what ever methods or Entities which are add in Server Side its replicates to client side application this makes easy access to server side entities. We Add &lt;strong&gt;Domain Service &lt;/strong&gt;class to expose WCF RIA Service on Server side. When you compile the project it automatically creates corresponding &lt;strong&gt;Domain Context&lt;/strong&gt; class in client application this Class helps to tracking changes and CURD operations of Entities.&lt;/p&gt;  &lt;p&gt;Here I am going to build Simple Application which uses WCF RIA Services. &lt;/p&gt;  &lt;p&gt; 1) Fire up VS.NET 2010 and Create SilverLight Business Application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nhy7a1BgI/AAAAAAAACJg/K8w3cBCO1oI/s1600-h/image%5B17%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nh0BLo76I/AAAAAAAACJk/48l9kOHkbAU/image_thumb%5B9%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160; This project Creates two application one is Silverlight client project and web project as shown below. This to projects connected or Linked using WCF RIA Services.&amp;#160; &lt;br /&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_Nh0wd6gxI/AAAAAAAACJo/v3lsrR8V0Y0/s1600-h/image%5B26%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_Nh2pXf5LI/AAAAAAAACJs/me4ksuDMlnE/image_thumb%5B14%5D.png?imgmax=800" width="352" height="772" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nh3EngnoI/AAAAAAAACJw/-VNve1cl1wY/s1600-h/image%5B25%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_Nh4SFOZqI/AAAAAAAACJ0/1cDqOo4-whY/image_thumb%5B13%5D.png?imgmax=800" width="644" height="483" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now I am going to add&amp;#160; EF model from one of the sample Database which you can download from CodePlex.&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nh5M2kxQI/AAAAAAAACJ4/ErzYdO3TR2I/s1600-h/image%5B35%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_Nh6Q65ItI/AAAAAAAACJ8/J4GM5bNyjMo/image_thumb%5B19%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now follow the Wizard. &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Next we are going to select Generate From Database options. Here we are going to generate our model from Existing Database.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_Nh7Lcn-7I/AAAAAAAACKA/uhjzmZmK480/s1600-h/image%5B41%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_Nh8RZ5hvI/AAAAAAAACKE/xSheyAvC7IQ/image_thumb%5B23%5D.png?imgmax=800" width="661" height="589" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160; Select Database which you wanted to use here I am going to use Chinook Sample DB.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nh9ewnXDI/AAAAAAAACKI/ETvjH2MWofw/s1600-h/image%5B47%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_Nh-6Za8uI/AAAAAAAACKM/tBpHMSn3CTY/image_thumb%5B27%5D.png?imgmax=800" width="666" height="502" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here we need to select the Tables which you wanted to add to our EF Model. Here I am going to select Customer and Employee Tables.   &lt;br /&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_Nh_t_OOnI/AAAAAAAACKQ/8rTjV0dXVyU/s1600-h/image%5B52%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_NiA9eolgI/AAAAAAAACKU/KcZVtEygmT0/image_thumb%5B30%5D.png?imgmax=800" width="674" height="500" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now we have created our model. At this point we need to compile our project so that Silverlight application will know the new changes to our solutions. Now we need to Add Domain Service Class.&lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_NiB-DSn5I/AAAAAAAACKY/Nfy8phNXRO8/s1600-h/image%5B57%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_NiDAxcV0I/AAAAAAAACKc/eF3a-reTqoM/image_thumb%5B33%5D.png?imgmax=800" width="677" height="462" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160; Please make sure that next step you check the checkboxes as shown below. Here I am enabling Editing options for both Customer and Employee entities.&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_NiD0m7csI/AAAAAAAACKg/eT5VtKr-gTw/s1600-h/image%5B61%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_NiFACw2XI/AAAAAAAACKk/auNSQNP51pg/image_thumb%5B35%5D.png?imgmax=800" width="632" height="772" /&gt;&lt;/a&gt;    &lt;p&gt;Now we can start&amp;#160; building UI to display Customer records on client side. Now select Data Source and click and select DataGrid then Drag and Drop Customer To UI Design Surface. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S_NiGGrC3nI/AAAAAAAACKs/N75oyJ1EZb0/s1600-h/image%5B66%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_NiHUlPj5I/AAAAAAAACKw/7VMdfOGSo8I/image_thumb%5B38%5D.png?imgmax=800" width="1028" height="521" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;/p&gt;    &lt;p&gt;At this point VS.NET created Domain Data Source control. as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_NiH4USVSI/AAAAAAAACK0/upJwW4W1s-0/s1600-h/image%5B71%5D%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image[71]" border="0" alt="image[71]" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_NiI3DzK1I/AAAAAAAACK4/lj2nJ1CeHsA/image%5B71%5D_thumb%5B2%5D.png?imgmax=800" width="1024" height="108" /&gt;&lt;/a&gt;    &lt;br /&gt;Now runt the application you will see customer Details displayed in Data Grid as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_NiKVzz4cI/AAAAAAAACK8/MURyKb231Qs/s1600-h/image%5B77%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_NiMHThuXI/AAAAAAAACLA/w8Ts6bKS41M/image_thumb%5B43%5D.png?imgmax=800" width="1028" height="566" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4338599743151468979?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4338599743151468979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4338599743151468979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4338599743151468979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4338599743151468979'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/building-silverlight-application-using.html' title='Building SilverLight Application using WCF RIA Services.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S_Nhx99YbrI/AAAAAAAACJc/gckicAw7ZBc/s72-c/image_thumb%5B8%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-915956760171016127</id><published>2010-05-17T23:10:00.000-05:00</published><updated>2010-05-17T23:10:44.440-05:00</updated><title type='text'>MSDN Widget Generator</title><content type='html'>&lt;a href="http://www.msdnwidget.com/"&gt;MSDN Widget Generator&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-915956760171016127?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.msdnwidget.com/' title='MSDN Widget Generator'/><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/915956760171016127/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=915956760171016127' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/915956760171016127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/915956760171016127'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/msdn-widget-generator.html' title='MSDN Widget Generator'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8754812306080330405</id><published>2010-05-17T22:25:00.001-05:00</published><updated>2010-05-17T22:26:39.039-05:00</updated><title type='text'>BindingBase class In SilverLight 4.0</title><content type='html'>&lt;p&gt;In Silverlight 3.0 we use Converts for custom Binding format. To do we Implement the following Interface and its Two Methods.&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IInSSYt_I/AAAAAAAACIQ/6hbvymTsyqE/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_IInxV6uDI/AAAAAAAACIU/YMoKbHSpqlo/image_thumb%5B3%5D.png?imgmax=800" width="1024" height="245" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;p&gt;Now In Silverlight 4.0 we have &lt;strong&gt;BindingBase&lt;/strong&gt; class&amp;#160; can relieve us from writing a converter in some situation .&lt;/p&gt;  &lt;p&gt;Here we are going to see the following three properties of BindingBase class .&amp;#160;&amp;#160; &lt;strong&gt;TargetNullValue&lt;/strong&gt;,&lt;strong&gt;StringFormat&lt;/strong&gt;, and &lt;strong&gt;FallbackValue&lt;/strong&gt;.&lt;/p&gt;  &lt;h3&gt;&lt;u&gt;&lt;font style="background-color: #ffff00"&gt;TargetNullValue&lt;/font&gt;&lt;/u&gt;&lt;/h3&gt;  &lt;p&gt;Here I have Contacts Class with some properties.&amp;#160; one of the property is Age is nullable type. suppose if Age is null we are going to display Text AgeNotknown. using &lt;strong&gt;TargetNullValue.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIocqoNpI/AAAAAAAACIY/6JNHqU2A37c/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_IIpFOfRNI/AAAAAAAACIc/VVsrms3QQXU/image_thumb%5B7%5D.png?imgmax=800" width="1024" height="436" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_IIptvks0I/AAAAAAAACIg/5EVLqkuwPmk/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIqBkxUYI/AAAAAAAACIk/06icSc8uN_I/image_thumb%5B10%5D.png?imgmax=800" width="1024" height="255" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S_IIqXih8RI/AAAAAAAACIo/d9y1fqI8RpA/s1600-h/image%5B21%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S_IIq00Yz5I/AAAAAAAACIs/Zz-qwMNNfhA/image_thumb%5B13%5D.png?imgmax=800" width="640" height="339" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;&lt;font style="background-color: #ffff00"&gt;&lt;u&gt;StringFormat:&lt;/u&gt;&lt;/font&gt;&lt;/h3&gt;  &lt;p&gt;Here we are going to format the Data of birth property.&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIrLA9QnI/AAAAAAAACIw/iKvcNL9B9UM/s1600-h/image%5B31%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_IIr3kBCwI/AAAAAAAACI0/heylS4iy4nw/image_thumb%5B19%5D.png?imgmax=800" width="1024" height="252" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIr1GCwsI/AAAAAAAACI4/hQ2fnzUkdI4/s1600-h/image%5B26%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIsVZkOfI/AAAAAAAACI8/hGgufL2drKY/image_thumb%5B16%5D.png?imgmax=800" width="640" height="338" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;&lt;font style="background-color: #ffff00"&gt;&lt;u&gt;FallbackValue&lt;/u&gt;&lt;/font&gt;&lt;/h4&gt;  &lt;p&gt;For example let say we have two classes &lt;strong&gt;Contacts&lt;/strong&gt; and &lt;strong&gt;MyClassMate&lt;/strong&gt; &lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S_IIstUeQrI/AAAAAAAACJA/m1brZpB6yf8/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S_IItEm-AYI/AAAAAAAACJE/7-KdZCLm6PU/image_thumb%5B28%5D.png?imgmax=800" width="640" height="412" /&gt;&lt;/a&gt;   &lt;p&gt;There is a situation when an interface would bind to either an instance of &lt;strong&gt;Contacts&lt;/strong&gt; or &lt;strong&gt;MyClassMate&lt;/strong&gt; . The &lt;strong&gt;Year&lt;/strong&gt; property is available only on MyClassMate . If we are binding an Contacts instance, no value would be displayed for this property. The &lt;strong&gt;FallbackValue&lt;/strong&gt; can be used in this case to indicate that if the property is not found.&lt;/p&gt;  &lt;p&gt;Here is XAML code to set FallbackValue.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IItud_GHI/AAAAAAAACJI/pmeYEzzNGU0/s1600-h/image%5B41%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_IIuHvMRxI/AAAAAAAACJM/J_7edc-Advc/image_thumb%5B25%5D.png?imgmax=800" width="1024" height="206" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S_IIuDcdkLI/AAAAAAAACJQ/HAHres0BL84/s1600-h/image%5B36%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S_IIutoyO9I/AAAAAAAACJU/r-tgaWQVVOE/image_thumb%5B22%5D.png?imgmax=800" width="640" height="383" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8754812306080330405?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8754812306080330405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8754812306080330405' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8754812306080330405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8754812306080330405'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/bindingbase-class-in-silverlight-40.html' title='BindingBase class In SilverLight 4.0'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S_IInxV6uDI/AAAAAAAACIU/YMoKbHSpqlo/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-2876300778290879544</id><published>2010-05-15T21:57:00.001-05:00</published><updated>2010-05-15T21:59:39.304-05:00</updated><title type='text'>DataPager-Silverlight Control</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Paging is the Job of the DataPager control. This control add paging support to List Box and Data Grid. Here I am going to show different &lt;strong&gt;Display Modes &lt;/strong&gt;of the DataPager control.&lt;/p&gt;  &lt;p&gt;First let me list of the available DisplayModes.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S-9ezQeuyoI/AAAAAAAACHA/TkPRzS-2UfU/s1600-h/image%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S-9e0CVZwnI/AAAAAAAACHE/9jAOfn7oA_E/image_thumb%5B2%5D.png?imgmax=800" width="484" height="268" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S-9fmFv_CVI/AAAAAAAACII/NZpQkb9HpM0/s1600-h/image%5B91%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S-9fmnfIZVI/AAAAAAAACIM/4jKKxxCWtKs/image_thumb%5B71%5D.png?imgmax=800" width="646" height="302" /&gt;&lt;/a&gt;  &lt;h4&gt;1) FirstLastNumeric&lt;/h4&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S-9e0b4KEOI/AAAAAAAACHI/dx-1LyQEnCc/s1600-h/image%5B14%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S-9e0uhzKhI/AAAAAAAACHM/DDBvuW6cF2M/image_thumb%5B8%5D.png?imgmax=800" width="1024" height="18" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S-9e15qC_TI/AAAAAAAACHQ/167C2hFkab4/s1600-h/image%5B56%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S-9e3EffRbI/AAAAAAAACHU/2Of1WJ8JLBU/image_thumb%5B38%5D.png?imgmax=800" width="1028" height="389" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;2) FirstLastPerviousNext&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S-9e4fuUc0I/AAAAAAAACHc/jJ1Ih37tNnI/s1600-h/image%5B61%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S-9e5pPObuI/AAAAAAAACHg/6OwQK9BdiNA/image_thumb%5B43%5D.png?imgmax=800" width="1028" height="366" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;3)&amp;#160;&amp;#160; FirstLastPreviousNextNumeric&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S-9e6xTbMqI/AAAAAAAACHk/KqSf1JEn1_k/s1600-h/image%5B66%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S-9e7wURgKI/AAAAAAAACHo/6vRdm6wkVvs/image_thumb%5B48%5D.png?imgmax=800" width="1028" height="338" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;4)&amp;#160;&amp;#160; Numeric&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S-9e95fr0yI/AAAAAAAACHs/3C3OqsJb0SQ/s1600-h/image%5B71%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S-9e_Y1Bs7I/AAAAAAAACHw/KCc734DivJs/image_thumb%5B53%5D.png?imgmax=800" width="1028" height="460" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;/p&gt;  &lt;h4&gt;5) PreviousNext&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S-9fAkLpZHI/AAAAAAAACH0/dp_VcdRwkLo/s1600-h/image%5B76%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S-9fCDOXRVI/AAAAAAAACH4/u8wLufaCsCg/image_thumb%5B58%5D.png?imgmax=800" width="1028" height="422" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;6) PreviousNextNumeric&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S-9fDeefiaI/AAAAAAAACH8/iltM6f06jMk/s1600-h/image%5B81%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S-9fE0MifdI/AAAAAAAACIA/_Hdh2w99cVs/image_thumb%5B63%5D.png?imgmax=800" width="1028" height="376" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-2876300778290879544?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/2876300778290879544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=2876300778290879544' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2876300778290879544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2876300778290879544'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/datapager-silverlight-control.html' title='DataPager-Silverlight Control'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S-9e0CVZwnI/AAAAAAAACHE/9jAOfn7oA_E/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8555035163740973998</id><published>2010-05-03T00:03:00.001-05:00</published><updated>2010-05-03T00:03:27.242-05:00</updated><title type='text'>LINQ – Let Keyword</title><content type='html'>&lt;p&gt; In this blog I am going to show how to use Let keyword. The let keyword gives an options to create local variable or sub query from expression. Once the values is assigned you can not create or assigned another value.&lt;/p&gt;  &lt;p&gt;Here is an example &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S95ZFLKrgAI/AAAAAAAACGw/F1Z3kXHWLIc/s1600-h/image%5B5%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S95ZFoP6pEI/AAAAAAAACG0/WSeeOm6i9GY/image_thumb%5B3%5D.png?imgmax=800" width="1024" height="302" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S95ZGPQb77I/AAAAAAAACG4/3CrxPcsqr0c/s1600-h/image%5B10%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S95ZHUYtsgI/AAAAAAAACG8/l5eVkcKYSYs/image_thumb%5B6%5D.png?imgmax=800" width="1028" height="521" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8555035163740973998?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8555035163740973998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8555035163740973998' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8555035163740973998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8555035163740973998'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/05/linq-let-keyword.html' title='LINQ – Let Keyword'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S95ZFoP6pEI/AAAAAAAACG0/WSeeOm6i9GY/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7798724225677318824</id><published>2010-04-28T22:06:00.001-05:00</published><updated>2010-04-28T22:06:37.630-05:00</updated><title type='text'>SilverLight 4.0 –Overriding Anonymous  Style.</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In my pervious Blog post I showed how define Anonymous style for the Button control. what if we wanted to override that one. Here is how we need to do to override the default style.&amp;#160; &lt;/p&gt;  &lt;p&gt;We need to set the Style attribute using this code&amp;#160; Style=”{x:Null}” ( Please see the button &lt;strong&gt;Good One&lt;/strong&gt;)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S9j3t03kotI/AAAAAAAACGg/32Ii3C0m2tw/s1600-h/image%5B4%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S9j3uuc0qoI/AAAAAAAACGk/G4pj1g3It3Y/image_thumb%5B2%5D.png?imgmax=800" width="640" height="379" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S9j3u1FEsNI/AAAAAAAACGo/c2SkE9EYaN8/s1600-h/image%5B8%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S9j3vckVn3I/AAAAAAAACGs/KW_OI5Qq1Ho/image_thumb%5B4%5D.png?imgmax=800" width="629" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.   &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7798724225677318824?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7798724225677318824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7798724225677318824' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7798724225677318824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7798724225677318824'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/silverlight-40-overriding-anonymous.html' title='SilverLight 4.0 –Overriding Anonymous  Style.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S9j3uuc0qoI/AAAAAAAACGk/G4pj1g3It3Y/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4517690987587490552</id><published>2010-04-28T20:14:00.001-05:00</published><updated>2010-04-28T20:14:05.055-05:00</updated><title type='text'>SilverLight 4.0 – Default Style</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt; In Silverlight 4 Now we have option to set &lt;strong&gt;Default style to particular type of control &lt;/strong&gt;. for example let say I have 4 button controls in my Silverlight UI. I wanted to define Style for the following properties&amp;#160; Margin, Width and height. here is how we usually define Style in Silverlight 3.0.&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S9jdUK1hCBI/AAAAAAAACGA/6-8LLhfC9pI/s1600-h/image%5B11%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S9jdUsM9NhI/AAAAAAAACGE/xG_E2ba6Un8/image_thumb%5B5%5D.png?imgmax=800" width="640" height="186" /&gt;&lt;/a&gt;  &lt;p&gt;but in Silverlight 4.0 we no need to specify Name. Just remove the Name attribute from Style as shown below.&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S9jdU1BV9cI/AAAAAAAACGI/1MZdwNcA1t8/s1600-h/image%5B19%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S9jdVY6vHOI/AAAAAAAACGM/TZaACG5g_Dk/image_thumb%5B9%5D.png?imgmax=800" width="640" height="188" /&gt;&lt;/a&gt;  &lt;p&gt;by removing the Name Attribute we are defining Anonymous&amp;#160; style this Style applies to all the button on our application this makes our XAML Code looks tidy and nice&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S9jdVwyQCiI/AAAAAAAACGQ/AfkX2VCGlnQ/s1600-h/image%5B24%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S9jdWbURI0I/AAAAAAAACGU/OQRiJtrxWBs/image_thumb%5B12%5D.png?imgmax=800" width="640" height="299" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S9jdWv7_-HI/AAAAAAAACGY/_Ti_sz78YoM/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S9jdXA5TpSI/AAAAAAAACGc/TZQATEsK9Kc/image_thumb%5B15%5D.png?imgmax=800" width="623" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan   &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4517690987587490552?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4517690987587490552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4517690987587490552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4517690987587490552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4517690987587490552'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/silverlight-40-default-style.html' title='SilverLight 4.0 – Default Style'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S9jdUsM9NhI/AAAAAAAACGE/xG_E2ba6Un8/s72-c/image_thumb%5B5%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-6615917628658302404</id><published>2010-04-22T08:04:00.001-05:00</published><updated>2010-04-22T08:04:36.881-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>SilverLight 4.0  Training Material</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The Silverlight 4 Training Course includes a whitepaper explaining all of the new Silverlight 4 features, several hands-on-labs that explain the features, and a 8 unit course for building business applications with Silverlight 4. please click to download from the following URL.&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S9BJYCy8PRI/AAAAAAAACF4/Ov-fIg_zqOo/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S9BJZI7wqWI/AAAAAAAACF8/O3D_9PxOGEQ/image_thumb%5B3%5D.png?imgmax=800" width="240" height="226" /&gt;&lt;/a&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/downloads/details.aspx?FamilyID=24CEA29E-042E-41C9-AA16-684A0CA5F5DB&amp;amp;displaylang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=24CEA29E-042E-41C9-AA16-684A0CA5F5DB&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=24CEA29E-042E-41C9-AA16-684A0CA5F5DB&amp;amp;displaylang=en&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-6615917628658302404?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/6615917628658302404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=6615917628658302404' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6615917628658302404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/6615917628658302404'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/silverlight-40-training-material.html' title='SilverLight 4.0  Training Material'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S9BJZI7wqWI/AAAAAAAACF8/O3D_9PxOGEQ/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3436375864535628860</id><published>2010-04-15T10:48:00.001-05:00</published><updated>2010-04-15T10:48:40.614-05:00</updated><title type='text'>WCF 4.0 Routing Service –Content Based Routing (CBR).</title><content type='html'>&lt;h4&gt;What is Content Based Routing? &lt;/h4&gt;  &lt;h5&gt;Content-Based Routing seeks to route messages. Messages are routed&amp;#160; not by a specified destination, but by the actual content of the message itself. In a typical application, a message is routed by being opened and then having a set of rules applied to its content.&lt;/h5&gt;  &lt;h5&gt;In this blog post I am going to show how to configure WCF 4.0 Routing Service as Content based router. Here I am going to take an example scenario is Worker Timesheet submission. The timesheets are submitted to one of two services, once service is responsible for processing employees only timesheets and other service will process Contractors Timesheet. The reason two different services are required is that&amp;#160; employee timesheets are automatically processed and approved but contractors timesheets require human interaction to validate the timesheets before their approval.&lt;/h5&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8c0ywieRxI/AAAAAAAACEQ/8gqezjbiu9s/s1600-h/image%5B8%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8c0zashgaI/AAAAAAAACEU/i_me_EFMap0/image_thumb%5B5%5D.png?imgmax=800" width="640" height="349" /&gt;&lt;/a&gt;  &lt;h5&gt;Another thing is that&amp;#160; we do not want the client to know that there are two separate services to handle this timesheets and further to this we do not want them to be responsible for picking which service to call and send the timesheet to.&lt;/h5&gt;  &lt;p&gt;Here is my VS.NET&amp;#160; project structure to implement this above scenario in WCF 4.0 using Routing Service.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c0zwpQv4I/AAAAAAAACEY/PxUi9jZgY-4/s1600-h/image39.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8c01Ywhu4I/AAAAAAAACEc/1F8FJoD6qtk/image_thumb26.png?imgmax=800" width="460" height="596" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;now let’s create each service component. &lt;/p&gt;  &lt;h2&gt;&lt;u&gt;Timesheet Service contract definition&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8c059wN7aI/AAAAAAAACEg/FOmkvYsgG2Q/s1600-h/image6.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8c08XPEcRI/AAAAAAAACEk/-0CG2q5nbd8/image_thumb4.png?imgmax=800" width="567" height="533" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now we need to implement the above contract in two different services&amp;#160; &lt;strong&gt;EmployeeTimeSheetSvc&lt;/strong&gt; and &lt;strong&gt;ContractorTimeSheetSvc. for the demo purpose we simply write out the Timesheet details to the console window.&lt;/strong&gt;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;EmployeeTimeSheetSvc [Hosting]&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c09qKBP_I/AAAAAAAACEo/Or8n0-yY-Lk/s1600-h/image13.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8c0-qjeY9I/AAAAAAAACEs/UwLSNn3HN14/image_thumb9.png?imgmax=800" width="783" height="435" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; EmployeeTimeSheet service listening at the following &lt;a title="http://localhost:8000/EmployeeService&amp;quot;" href="http://localhost:8000/EmployeeService&amp;quot;"&gt;http://localhost:8000/EmployeeService&amp;quot;&lt;/a&gt; endpoint with basicHttpBinding. here we are hosting &lt;strong&gt;EmployeeTimeSheetSvc&amp;#160;&amp;#160;&amp;#160; service in&lt;/strong&gt; Windows console application [ for real world we should be hosting it in IIS /WAS]&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c0_bhOqXI/AAAAAAAACEw/V1N1w4G18yQ/s1600-h/image20.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1AmEtUjI/AAAAAAAACE0/MKHSpS8fbD0/image_thumb14.png?imgmax=800" width="783" height="403" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h2&gt;&lt;u&gt;ContractorTimeSheetSvc [Hosting]&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1BYx4oyI/AAAAAAAACE4/pzRsQjXZwro/s1600-h/image27.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8c1C0GDasI/AAAAAAAACE8/JZX7l7m6S3w/image_thumb19.png?imgmax=800" width="788" height="478" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160; ContractTimeSheet service listening&amp;#160; at the following &lt;a title="http://localhost:8000/EmployeeService" href="http://localhost:8001/ContractorService&amp;quot;" ?="?"&gt;http://localhost:8001/ContractorService&amp;quot;&lt;/a&gt; endpoint with basicHttpBinding.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8c1DmeWX5I/AAAAAAAACFA/bCyxJzzvG4A/s1600-h/image34.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1FtVB7cI/AAAAAAAACFE/w8H9O9Mwu8Q/image_thumb24.png?imgmax=800" width="794" height="392" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;&lt;u&gt;Router Service [Hosting]&lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;First we need to add the following two .NET Assembly to the Routing Service project. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8c1GPx-3iI/AAAAAAAACFI/ga4ZoAPPQu0/s1600-h/image39%5B1%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1HE7t-mI/AAAAAAAACFM/9zq9sZ55hxw/image_thumb27.png?imgmax=800" width="585" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here we are hosting &lt;strong&gt;RoutingService&lt;/strong&gt; class. &lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1HiiLCJI/AAAAAAAACFQ/Y5e7B9dr-Ak/s1600-h/image19.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8c1JOlmQiI/AAAAAAAACFU/gSxRuGrmfZk/image_thumb12.png?imgmax=800" width="880" height="440" /&gt;&lt;/a&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here the&amp;#160; RoutingService implements the &lt;strong&gt;System.ServiceModel.Routing.IRequestReplyRouter&lt;/strong&gt; contract. There are other contracts that you could use&amp;#160; based your service requirements .&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1JwPw1RI/AAAAAAAACFY/KxAbHg_-o0o/s1600-h/image37.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1KlXPMjI/AAAAAAAACFc/RFhpGk-DtZE/image_thumb24%5B1%5D.png?imgmax=800" width="391" height="212" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1MiorZ6I/AAAAAAAACFg/RWyW_ANfKm0/s1600-h/image18.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8c1O0_WN-I/AAAAAAAACFk/BLX7vdprpRU/image_thumb11.png?imgmax=800" width="888" height="634" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;If you look at the above configuration the&amp;#160; routing section specifies two filters which uses&amp;#160; XPath to perform the routing. These filters are used in the filterable section which specifies that when the filter’s condition are matched which endpoint should be called. In this&amp;#160; example&amp;#160; we are checking if the&amp;#160; employee type is PERM then&amp;#160; the “empEP” endpoint is called and if the employee type is CONTRACTOR then&amp;#160; “conEP” endpoint is called. &lt;/p&gt;  &lt;h2&gt;&lt;u&gt;&lt;/u&gt;&lt;/h2&gt;  &lt;h2&gt;&lt;u&gt;WCF Client Application &lt;/u&gt;&lt;/h2&gt;  &lt;p&gt;Here we are&amp;#160; invoking Timesheet service using ChannelFactory class. This allows us to call WCF service without adding a Service reference[using VE.NET IDE] . but we need to Reference the&amp;#160; Service Contract interface though [ We can&amp;#160; simply copy the service contract Interface definition&amp;#160; to this project.]    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1QcTq0jI/AAAAAAAACFo/OH9zesQGUDI/s1600-h/image46.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1ST52sEI/AAAAAAAACFs/kD6FxRXenIw/image_thumb31.png?imgmax=800" width="842" height="701" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1UAVvWvI/AAAAAAAACFw/R88PqHDqWcI/s1600-h/image53.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8c1V_mMvOI/AAAAAAAACF0/pwBnQMhTyEk/image_thumb36.png?imgmax=800" width="834" height="375" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt; So using WCF 4.0 Routing service it is very easy to configure Router service to forward a message on to another WCF service based on the content of the received message.   &lt;br /&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3436375864535628860?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3436375864535628860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3436375864535628860' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3436375864535628860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3436375864535628860'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/wcf-40-routing-service-content-based.html' title='WCF 4.0 Routing Service –Content Based Routing (CBR).'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S8c0zashgaI/AAAAAAAACEU/i_me_EFMap0/s72-c/image_thumb%5B5%5D.png?imgmax=800' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-497036663020836722</id><published>2010-04-14T00:42:00.000-05:00</published><updated>2010-04-14T00:44:22.784-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>WCF 4.0 Routing Service –Failover</title><content type='html'>&lt;p&gt;In this blog post I am going to show how to configure&amp;#160; WCF 4.0 Routing Service Failover option. I wanted to make sure not to confuse Failover Vs Load balancing.&amp;#160; Service Failover means when client can not reach or communicate with the Service the fall back route is called Failover. for example let say we have&amp;#160; hosted a WCF order Service as main Service, when client wanted to place an order it calls&amp;#160; PlaceOrder Operation&amp;#160; service once service receives the message it will process it. &lt;/p&gt;  &lt;p&gt;suppose let say when client calls Operation (Method) on order service at that time if service not available in this case the PlaceOrder Operation message dropped between server and client instead of losing a message we will persist in MSMQ once service comes online we can push these order again to the service to process.&lt;/p&gt;  &lt;p&gt;In Windows environment Microsoft Messaging Queue (MSMQ) Service mainly used for to build fault tolerance applications. MSMQ provides Public (as a Active Directory ) and Private Queues to persist the messages when client fails to communicate with service. Here we are going to use MSMQ Private Queue as a our backup service.&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWAu-y1UI/AAAAAAAACCk/RFjDjeTjDV0/s1600-h/image%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWBNuGxVI/AAAAAAAACCo/XB7QogdaRjc/image_thumb%5B2%5D.png?imgmax=800" width="640" height="351" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;p&gt;Now we need to create and host the following Service components. &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Define Service Contract and Implementation. &lt;/li&gt;    &lt;li&gt;WCF Order Service (Main service) &lt;/li&gt;    &lt;li&gt;Backup or Fail over Service &lt;/li&gt;    &lt;li&gt;Routing Service &lt;/li&gt;    &lt;li&gt;Client App &lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;&lt;u&gt;1) Service &amp;amp; Operation Contracts Definition:&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWB3tP-GI/AAAAAAAACCs/oXKD4yo7LME/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWCdxoEdI/AAAAAAAACCw/wVVONNl3HZk/image_thumb%5B10%5D.png?imgmax=800" width="1024" height="582" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;2) Order Service Hosting (Main Service)&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWCpr7lPI/AAAAAAAACC0/RD2b1YA7t7I/s1600-h/image%5B30%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWDO0-Z-I/AAAAAAAACC4/aKwJqwc1YNU/image_thumb%5B20%5D.png?imgmax=800" width="803" height="224" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Configuration &lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWD8xV4_I/AAAAAAAACC8/hlOW4m1xFko/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWEohmRrI/AAAAAAAACDA/3rIYpnF5Kck/image_thumb%5B18%5D.png?imgmax=800" width="819" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;3) Backup or Failover Service Hosting&lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWE-PaZuI/AAAAAAAACDE/uE3N3s2c180/s1600-h/image%5B44%5D%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image[44]" border="0" alt="image[44]" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWFdCPyjI/AAAAAAAACDI/mrBJcqYZP6Q/image%5B44%5D_thumb%5B3%5D.png?imgmax=800" width="816" height="389" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWGLlk4kI/AAAAAAAACDM/BDcAtgSkPqY/s1600-h/image%5B37%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWGn32iAI/AAAAAAAACDQ/AMYXqj85k6M/image_thumb%5B25%5D.png?imgmax=800" width="818" height="341" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;h4&gt;&lt;u&gt;4) Routing Service Hosting&lt;/u&gt;&lt;/h4&gt;    &lt;h4&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWGzmV4xI/AAAAAAAACDY/LVZGSrJZ0UY/s1600-h/image%5B71%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWHcCMgkI/AAAAAAAACDc/-82QfG-Rm8A/image_thumb%5B49%5D.png?imgmax=800" width="778" height="420" /&gt;&lt;/a&gt;       &lt;br /&gt;      &lt;br /&gt;&lt;/h4&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWIYt8gKI/AAAAAAAACDg/PvlPGgjyoNs/s1600-h/image%5B64%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWJKggArI/AAAAAAAACDk/zXH-wWNCbn4/image_thumb%5B44%5D.png?imgmax=800" width="830" height="684" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Client Application &lt;/u&gt;&lt;/h4&gt;  &lt;p&gt;Create Windows console application and add Service Reference ( Order Service) . &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWJWyQLhI/AAAAAAAACDo/iBExtdLXQ0I/s1600-h/image%5B82%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWJznxf2I/AAAAAAAACDs/CRZjPUyctaU/image_thumb%5B56%5D.png?imgmax=800" width="593" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now we need to modify the Endpoints which points to Router service instead of pointing to WCF Order Service.&lt;/p&gt;  &lt;h4&gt;&lt;u&gt;Before Modification &lt;/u&gt;&lt;/h4&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWKSqphaI/AAAAAAAACDw/6fyeFz0kJnk/s1600-h/image%5B96%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWK4bjPyI/AAAAAAAACD0/VdgmhgWHa5A/image_thumb%5B66%5D.png?imgmax=800" width="791" height="106" /&gt;&lt;/a&gt;   &lt;h4&gt;&amp;#160;&amp;#160;&amp;#160; &lt;u&gt;After Modification&lt;/u&gt;&lt;/h4&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8VWLEw9x_I/AAAAAAAACD4/6eXAtc2GcPo/s1600-h/image%5B89%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWLs34JfI/AAAAAAAACD8/VFkcgwaV2BM/image_thumb%5B61%5D.png?imgmax=800" width="811" height="147" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8VWL5l94YI/AAAAAAAACEA/hzAZIBW_rlU/s1600-h/image%5B78%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8VWMHNfuAI/AAAAAAAACEE/XNdrocc4Awc/image_thumb%5B54%5D.png?imgmax=800" width="832" height="358" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; when main service is not running then Router service will send message to MSMQ .&lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8VWMi2pQmI/AAAAAAAACEI/iecxKLNto5o/s1600-h/image%5B70%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8VWNRsp5mI/AAAAAAAACEM/eZmGrQ47f7k/image_thumb%5B48%5D.png?imgmax=800" width="818" height="546" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;br /&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-497036663020836722?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/497036663020836722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=497036663020836722' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/497036663020836722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/497036663020836722'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/wcf-40-routing-service-failover.html' title='WCF 4.0 Routing Service –Failover'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S8VWBNuGxVI/AAAAAAAACCo/XB7QogdaRjc/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5703467304627209619</id><published>2010-04-13T17:21:00.001-05:00</published><updated>2010-04-13T17:21:40.435-05:00</updated><title type='text'>WCF 4.0 Routing Service –Multicasting</title><content type='html'>&lt;h4&gt;What is Multicasting?&lt;/h4&gt;  &lt;p&gt;Multicasting is a communication process that takes place in a network environment. Essentially, a multicast is a message that originates with a single user and is received by multiple end points around the network. &lt;/p&gt;  &lt;p&gt;In this blog post I am going to show WCF Routing Service Multicasting.&amp;#160; Here a WCF Client sends a message to routing service that will Route the same message to one or more&amp;#160; WCF Services which is hosted in different bindings and Addresses .For the demo purpose I am going to create Two WCF services( namely one ,two) and self hosting as windows Console application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuPMr8wcI/AAAAAAAACBM/WdtR-eWZVYU/s1600-h/image%5B69%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8TuPylq38I/AAAAAAAACBQ/MZxDcyYNJT0/image_thumb%5B51%5D.png?imgmax=800" width="692" height="355" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When we creating Multicast Service the WCF Operation Contract should be defined as &lt;strong&gt;One-way&lt;/strong&gt;. Here is the definition of WCF Service contract which I am going to use here.&amp;#160; &lt;/p&gt;  &lt;h3&gt;&amp;#160;&amp;#160; &lt;u&gt;WCF Service Contract:&lt;/u&gt;&lt;/h3&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuQLxE3tI/AAAAAAAACBU/jEhYEDSXHV4/s1600-h/image%5B34%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8TuQo-PJ4I/AAAAAAAACBY/W-SnD89EiuM/image_thumb%5B24%5D.png?imgmax=800" width="769" height="237" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here are the WCF services ,Routing Service and their endpoints definitions. &lt;/p&gt;   &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuRH5Tq6I/AAAAAAAACBc/rHTEtcV1-2I/s1600-h/image%5B32%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuSMEvKHI/AAAAAAAACBg/pKqQbF9JlwE/image_thumb%5B22%5D.png?imgmax=800" width="785" height="447" /&gt;&lt;/a&gt;  &lt;br /&gt;      &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;h3&gt;&lt;u&gt;WCF Service Implementation:&lt;/u&gt;&lt;/h3&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuSogqQoI/AAAAAAAACBk/2crwV4nTsGk/s1600-h/image%5B50%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8TuTEKFIwI/AAAAAAAACBo/kd3ReWHSsrs/image_thumb%5B36%5D.png?imgmax=800" width="820" height="477" /&gt;&lt;/a&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; This WCF service listen on port 6001 and binding netTcpBidning.&lt;/p&gt;  &lt;blockquote&gt;   &lt;h3&gt;&lt;u&gt;WCF Service Configuration definitions:&lt;/u&gt;&lt;/h3&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuTwA4HKI/AAAAAAAACBs/rORrKsYz1Os/s1600-h/image%5B57%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuUdIK4EI/AAAAAAAACBw/IbU-7wU4WPw/image_thumb%5B41%5D.png?imgmax=800" width="803" height="254" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Create Second WCF service and implementation the same&amp;#160; service contract&amp;#160; with port &lt;strong&gt;6002&lt;/strong&gt; and binding as&amp;#160; &lt;strong&gt;wsHttpBinding&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now we need to create WCF Routing Service and define the configuration.&lt;/p&gt;  &lt;blockquote&gt;   &lt;h3&gt;&lt;u&gt;Routing Service &amp;amp; Configuration:&lt;/u&gt;&lt;/h3&gt; &lt;/blockquote&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8TuUkYfnUI/AAAAAAAACB0/Zkw6J18sn7w/s1600-h/image%5B76%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8TuVLlCvZI/AAAAAAAACB4/zYdKRT_Kjs4/image_thumb%5B56%5D.png?imgmax=800" width="820" height="193" /&gt;&lt;/a&gt;  &lt;blockquote&gt;   &lt;p&gt;Here I am using the “ISimplexDatagramRouter” as the contract’s interface and it is a simple message router, with a datagram, one-way, semantics and no session support (you can use “ISimplexSessionRouter” for session support, and use “IRequestReplyRouter” for a request/replay routing scenario). &lt;/p&gt;    &lt;p&gt;&amp;#160;&lt;/p&gt;   &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuVlKJWRI/AAAAAAAACB8/U3Hr0XKSobY/s1600-h/image%5B89%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8TuWDQq0vI/AAAAAAAACCA/G7m9aGhpHIU/image_thumb%5B65%5D.png?imgmax=800" width="310" height="150" /&gt;&lt;/a&gt;    &lt;p&gt;By default this Routing Service routes the message to all the destination services is recognizes via the routing configuration (see below). This is done because I am using the “MatchAll&amp;#160; message filter.&amp;#160; Here is the list of&amp;#160; message filters that come OOTB with WCF.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuWLu4ZeI/AAAAAAAACCE/b1do2ztZg_Q/s1600-h/image%5B82%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuWjf63fI/AAAAAAAACCI/tEsfoO0DAgk/image_thumb%5B60%5D.png?imgmax=800" width="240" height="200" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;    &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8TuXaGL6BI/AAAAAAAACCM/k9A-g3zo7Lg/s1600-h/image%5B43%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuYheZoqI/AAAAAAAACCQ/IdZbMgIsmVs/image_thumb%5B31%5D.png?imgmax=800" width="828" height="550" /&gt;&lt;/a&gt;      &lt;br /&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;h3&gt;&lt;u&gt;WCF Client:&lt;/u&gt;&lt;/h3&gt; &lt;/blockquote&gt;    &lt;p&gt;&amp;#160; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8TuY-cEOgI/AAAAAAAACCU/NvTIjMOFSFU/s1600-h/image%5B64%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8TuZp7UoKI/AAAAAAAACCY/ZhOOQ288ZEg/image_thumb%5B46%5D.png?imgmax=800" width="820" height="224" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; To test&amp;#160;&amp;#160; First Start WCF service 1 &amp;amp; 2 then Routing service&amp;#160; finally run the client. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8TubXk4uwI/AAAAAAAACCc/5SzBQGTHOVs/s1600-h/image%5B95%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8Tuc5jBZFI/AAAAAAAACCg/4UP5egebtJ4/image_thumb%5B69%5D.png?imgmax=800" width="834" height="351" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;The Routing service also has the options to define and use a Failover&amp;#160; or backup service. In the case of failure to deliver the message to any of the destination service endpoints. In the next blog we will see how to configure failover options.&amp;#160; &lt;/p&gt;    &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan   &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-5703467304627209619?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/5703467304627209619/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=5703467304627209619' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5703467304627209619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/5703467304627209619'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/wcf-40-routing-service-multicasting.html' title='WCF 4.0 Routing Service –Multicasting'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S8TuPylq38I/AAAAAAAACBQ/MZxDcyYNJT0/s72-c/image_thumb%5B51%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4156304600501750245</id><published>2010-04-13T01:56:00.001-05:00</published><updated>2010-04-13T02:12:17.260-05:00</updated><title type='text'>WCF 4.0 Routing Service – Protocol Bridging</title><content type='html'>&lt;p&gt;Today Microsoft Released VS.NET 2010 and .NET 4.0 this release also includes WCF 4.0 .&amp;#160; In this release WCF 4.0 has many new features like&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Simple Configuration &lt;/li&gt;    &lt;li&gt;Router Service &lt;/li&gt;    &lt;li&gt;Serialization Enhancements &lt;/li&gt;    &lt;li&gt;Web Programming &lt;/li&gt;    &lt;li&gt;Service Discovery &lt;/li&gt;    &lt;li&gt;Workflow Service. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;In this blog post We are going to look at&amp;#160; WCF 4.o Routing Service- Protocol bridging.&amp;#160; &lt;/p&gt;  &lt;p&gt;Protocol Bridging is basically transport conversion. for example the below picture shows that the client sends a message to&amp;#160; Routing Service via HTTP protocol once message reaches to Routing Service now routing service will route the same message to backend WCF Service via&amp;#160; TCP/IP protocol. Here we are bridging the protocols between&amp;#160; HTTP and TCP/IP.&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVQXHWEMI/AAAAAAAAB_U/W5XJ7ozdAv8/s1600-h/image%5B118%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8QVRBTKdEI/AAAAAAAAB_Y/4BsE2UfwZxw/image_thumb%5B84%5D.png?imgmax=800" width="709" height="238" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;br /&gt;  &lt;p&gt;For the demo purpose I am going to Create WCF service&amp;#160; and self hosting in Console application.&lt;/p&gt;  &lt;p&gt;Now We need to create and host the following Services and client.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;WCF Service &lt;/li&gt;    &lt;li&gt;Routing Service &lt;/li&gt;    &lt;li&gt;WCF Client &lt;/li&gt;    &lt;li&gt;Test it &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1 align="justify"&gt;1) Creating WCF Service&lt;/h1&gt;  &lt;p&gt;Fire up VS.NET 2010 make sure that you have selected&lt;strong&gt; .NET Framework 4.0&lt;/strong&gt; and then select Console application project template&amp;#160; to create a new project name the project as SystemWCFService.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVSHed6lI/AAAAAAAAB_c/Hbv0Rx3bYwU/s1600-h/image%5B8%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVTJn5pmI/AAAAAAAAB_g/CqRsjUgcFoE/image_thumb%5B4%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now we need to add the &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVTqUhO8I/AAAAAAAAB_k/Iwj47wowZy0/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 3px 20px 0px 11px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVT4hF2bI/AAAAAAAAB_o/fGKEzwV5wpI/image_thumb%5B10%5D.png?imgmax=800" width="240" height="36" /&gt;&lt;/a&gt;Assembly References to the project.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;ServiceContract and operation contract definition&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Here I am define three operations contracts .&amp;#160; GetProcess operations will select all process currently running on the server and returns to client. &lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVUaqPqmI/AAAAAAAAB_s/302utnywsCc/s1600-h/image%5B40%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVVLMXj5I/AAAAAAAAB_w/X19Pnlx_jZU/image_thumb%5B28%5D.png?imgmax=800" width="328" height="228" /&gt;&lt;/a&gt;   &lt;p&gt;&amp;#160; &lt;strong&gt;&lt;u&gt;Service Implementation&lt;/u&gt;&lt;/strong&gt;     &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVV0hVrhI/AAAAAAAAB_0/Dm9l7PYyafE/s1600-h/image%5B33%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVW_2B7TI/AAAAAAAAB_4/R13j-awiRyY/image_thumb%5B23%5D.png?imgmax=800" width="716" height="499" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Service Hosting&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVWyvtYOI/AAAAAAAAB_8/LPxFNOTSbXs/s1600-h/image%5B39%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVXn-7RjI/AAAAAAAACAA/hHvHYdLDh0g/image_thumb%5B27%5D.png?imgmax=800" width="721" height="198" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Service Configuration&lt;/u&gt;&lt;/strong&gt;     &lt;br /&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVYH6b8gI/AAAAAAAACAE/d4nZY99WiTs/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVZGJhPQI/AAAAAAAACAI/7CJTZtclx8Y/image_thumb%5B32%5D.png?imgmax=800" width="722" height="332" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;[Note : In WCF 4.0 we can create a service with Simple configuration and we can use protocol mapping to override default endpoints] &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h1&gt;2) Creating Routing Service&lt;/h1&gt;  &lt;p&gt;To create Routing service we need to add new console project[.NET Framework 4.0]&amp;#160; and add the following Assembly References to it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVZREvXKI/AAAAAAAACAM/jkNGQxonhXU/s1600-h/image%5B55%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVaNPI3vI/AAAAAAAACAQ/fXtL37XoWOM/image_thumb%5B39%5D.png?imgmax=800" width="327" height="71" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now we need to host our routing service for that we need&amp;#160; ABC&amp;#160; A- Address , B-Binding , C-Contract .&amp;#160;&amp;#160; WCF 4.0 comes with the following Routing services Contracts . &lt;strong&gt;&lt;font color="#ff0000"&gt;ISimplexDatagramRouter, ISimplexSessionRouter, IRequestReplyRouter, IDuplexSessionRouter&lt;/font&gt;&lt;/strong&gt; our WCF service message&amp;#160; pattern is Request-Reply so we are going to host our Routing service with IRequestReplyRouter contract.&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8QVam6oxDI/AAAAAAAACAU/Da3lZE5haOY/s1600-h/image%5B123%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8QVbZOx3HI/AAAAAAAACAY/3V-76o_XZBY/image_thumb%5B87%5D.png?imgmax=800" width="367" height="182" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVb294koI/AAAAAAAACAc/A_hbLjfGj3Y/s1600-h/image%5B63%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVcuRx22I/AAAAAAAACAg/rpOwPH3AG1o/image_thumb%5B45%5D.png?imgmax=800" width="866" height="175" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Define&amp;#160; FilterTable and Filters&lt;/u&gt;&lt;/strong&gt; . &lt;/p&gt;  &lt;p&gt;Now we need to Add the routing table and message filters. These are the settings used by the router service to do the actual routing of the messages&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8QVdE_qz9I/AAAAAAAACAk/lHdqKlRtBMs/s1600-h/image%5B76%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8QVeMTK6mI/AAAAAAAACAo/Bvjf8Ch-PGU/image_thumb%5B54%5D.png?imgmax=800" width="867" height="406" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now we need to define actual Service Endpoint inside Routing Service configuration file .    &lt;br /&gt;&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVetMPTWI/AAAAAAAACAs/aDwoWbl73ZQ/s1600-h/image%5B88%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVfXSKhaI/AAAAAAAACAw/jBkiPWb4pw4/image_thumb%5B62%5D.png?imgmax=800" width="868" height="132" /&gt;&lt;/a&gt;   &lt;p&gt;Here we need to specify&amp;#160; actual WCF service Endpoint and binding. actually routing service do not care about service contract that is why we put&amp;#160; *.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Hosting Routing Service&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt; &lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVfwtB7RI/AAAAAAAACA0/_XlsoV75jPY/s1600-h/image%5B82%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVgdKuzxI/AAAAAAAACA4/A7w7Emq_zqQ/image_thumb%5B58%5D.png?imgmax=800" width="865" height="197" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Routing Service listens an Endpoint which client expects.&amp;#160; [i.e &lt;a href="http://localhost:9000/SystemRoutingService"&gt;http://localhost:9000/SystemRoutingService&lt;/a&gt;]    &lt;br /&gt;&lt;/p&gt;  &lt;h1&gt;3) Creating WCF client &amp;amp; calling WCF Service&lt;/h1&gt;  &lt;p&gt;Here we are going to use &lt;strong&gt;ChannelFactroy&lt;/strong&gt; class to create WCF proxy and invoke the Operations. for that we need&amp;#160; WCF Service binding , Endpoint &amp;amp; Contract.&lt;/p&gt;  &lt;p&gt;Here Endpoint Address same as Routing Service EP. &lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVipx3ZwI/AAAAAAAACA8/YrYeu_lA8qA/s1600-h/image%5B103%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8QVjTiCz2I/AAAAAAAACBA/tnoou1AAjP0/image_thumb%5B73%5D.png?imgmax=800" width="930" height="549" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Testing:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;First execute the&amp;#160; WCF service and then Routing Service now run the client . Now&amp;#160; client calls GetProcess&amp;#160; method and receives&amp;#160; result from Actual WCF service via Routing service .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8QVl4JqEYI/AAAAAAAACBE/N_UvDp7VAk8/s1600-h/image%5B108%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8QVn3wx6II/AAAAAAAACBI/UCUyZqg0n_Q/image_thumb%5B76%5D.png?imgmax=800" width="640" height="367" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Next Blog post I will show how Routing service&amp;#160; Multicasting works.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4156304600501750245?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4156304600501750245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4156304600501750245' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4156304600501750245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4156304600501750245'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/wcf-40-routing-service-protocol.html' title='WCF 4.0 Routing Service – Protocol Bridging'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S8QVRBTKdEI/AAAAAAAAB_Y/4BsE2UfwZxw/s72-c/image_thumb%5B84%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4075086583363754905</id><published>2010-04-10T22:36:00.001-05:00</published><updated>2010-04-10T22:36:11.525-05:00</updated><title type='text'>VS.NET 2010 Generating Sequence Diagram</title><content type='html'>&lt;p&gt;Let us see how we can generate that. To do that I am going to create simple Windows Form Application project. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8FDlT2e2oI/AAAAAAAAB-k/wiuIv08xans/s1600-h/image%5B12%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S8FDmPD26dI/AAAAAAAAB-o/CWc31kMc8cQ/image_thumb%5B6%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now add a person class to the project and&amp;#160; using person class create a contact class as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8FDm5oWoVI/AAAAAAAAB-s/vK7v24ZGYR0/s1600-h/image%5B13%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8FDn5MpFeI/AAAAAAAAB-0/S7yP8wdaaWY/image_thumb%5B7%5D.png?imgmax=800" width="640" height="345" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now add a Button to the Form and add button Click event handler in that call &lt;strong&gt;GetName&lt;/strong&gt; method of Contact class with Person class Id .    &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8FDoAUP5bI/AAAAAAAAB-4/HjHGSxQh3uM/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8FDofmrlsI/AAAAAAAAB-8/2bx7XGYrLX4/image_thumb%5B18%5D.png?imgmax=800" width="640" height="142" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now to generate the sequence diagram for this method just right click inside button_click event&amp;#160; as shown below.&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8FDo8aTcYI/AAAAAAAAB_A/_GZw3zqQgkc/s1600-h/image%5B29%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8FDpnOzdTI/AAAAAAAAB_E/bS0CtGv8-sM/image_thumb%5B19%5D.png?imgmax=800" width="644" height="523" /&gt;&lt;/a&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now VS.NET IDE will generate the following Sequence diagram for the above Button_Click event method.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8FDqDxhZXI/AAAAAAAAB_I/gnDtH-zf6aU/s1600-h/image%5B30%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8FDqqCeTXI/AAAAAAAAB_M/dYiSRXLkl4E/image_thumb%5B20%5D.png?imgmax=800" width="626" height="519" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.   &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4075086583363754905?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4075086583363754905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4075086583363754905' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4075086583363754905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4075086583363754905'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/vsnet-2010-generating-sequence-diagram.html' title='VS.NET 2010 Generating Sequence Diagram'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S8FDmPD26dI/AAAAAAAAB-o/CWc31kMc8cQ/s72-c/image_thumb%5B6%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8953011421764010218</id><published>2010-04-10T03:40:00.001-05:00</published><updated>2010-04-10T03:48:16.815-05:00</updated><title type='text'>WCF (Windows Communication Foundation) Services Ecosystem</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S8A5bJt5rrI/AAAAAAAAB9s/U-VmdFyphWw/s1600-h/image%5B120%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8A5c0YbiyI/AAAAAAAAB9w/nus0Y7-Immo/image_thumb%5B106%5D.png?imgmax=800" width="823" height="503" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#ff0000"&gt;WCF (Core/SOAP)Services.&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Is best for Operation based Services ,building Interoperable services to work with such as Java, channel and host plug-ability,flow transactions, Security (Message, Transport), Support multiple binding such as&amp;#160; HTTP, TCP, MSMQ, PIPE.&lt;/font&gt;&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8A5duIwysI/AAAAAAAAB90/Zrv0wJYogbE/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8A5ebGlSjI/AAAAAAAAB94/BRB2h8tdmUU/image_thumb%5B30%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#ff0000" size="4"&gt;WCF Data Services :&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;This is formerly known as&amp;#160; ADO.NET Data Services this is good example for implantation of &lt;strong&gt;OData&lt;/strong&gt; (Open Data protocol ). This kind of services mainly used to expose data model as &lt;strong&gt;RESTful&lt;/strong&gt; services.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5e0VNfNI/AAAAAAAAB98/xyj3MVBDPME/s1600-h/image%5B52%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5f-dl3ZI/AAAAAAAAB-A/t5B3wik_BhM/image_thumb%5B40%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#ff0000"&gt;WCF WEBHTTP Services&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; :&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;font size="3"&gt;Is best when you are exposing operation-centric HTTP services to be deployed at web scale or are building a RESTful service and want full control over the URI/format/protocol.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;This is new to .NET 4.0 Framework to build project on this you need to download Project templates from online&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;First of up VS.NET 2010 go to Tools-&amp;gt;Extension Manager-&amp;gt;Online Gallery –&amp;gt;WCF and download .&lt;/font&gt;&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5gd8bVYI/AAAAAAAAB-E/z6SCAowYWBE/s1600-h/image%5B85%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5haknkFI/AAAAAAAAB-I/E-vH4xC-Tt8/image_thumb%5B73%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#ff0000" size="4"&gt;WCF RIA Services:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;WCF RIA Services is mainly used for building RIA Application example Silverlight.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;/font&gt;&lt;/p&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S8A5h2YMc6I/AAAAAAAAB-M/N3Z7GO_PlY4/s1600-h/image%5B122%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S8A5i8IOE5I/AAAAAAAAB-Q/EVUQBBV13wI/image_thumb%5B108%5D.png?imgmax=800" width="639" height="497" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S8A5jWA9RdI/AAAAAAAAB-U/zNPNU6mMssk/s1600-h/image%5B65%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S8A5jz7HCTI/AAAAAAAAB-Y/ecdu0I-qhHM/image_thumb%5B53%5D.png?imgmax=800" width="500" height="497" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#ff0000" size="4"&gt;WCF Workflow Services:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&amp;#160;&lt;/font&gt;&lt;font size="3"&gt;Is best for long running, durable operations or where the specification and enforcement of operation sequencing is important.&lt;/font&gt;&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5kTxTpZI/AAAAAAAAB-c/c7SEJrkS23M/s1600-h/image%5B75%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S8A5lHrEprI/AAAAAAAAB-g/7rcaey8cObg/image_thumb%5B63%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font size="5"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Nandri(Thanks)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;SreenivasaRagavan.&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8953011421764010218?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8953011421764010218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8953011421764010218' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8953011421764010218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8953011421764010218'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/wcf-windows-communication-foundation.html' title='WCF (Windows Communication Foundation) Services Ecosystem'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S8A5c0YbiyI/AAAAAAAAB9w/nus0Y7-Immo/s72-c/image_thumb%5B106%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7186980955305980593</id><published>2010-04-09T22:34:00.001-05:00</published><updated>2010-04-09T22:34:12.068-05:00</updated><title type='text'>Open Data Protocol Visualizer</title><content type='html'>&lt;p&gt;Microsoft Open Data Protocol Visualizer (CTP1) provides a read-only graphical view of the types and relationships provided by a WCF Data Service . WCF Data service uses OData protocol to expose the Data as&lt;strong&gt; Restful Service&lt;/strong&gt; .&lt;/p&gt;  &lt;p&gt;Here is the Link where you can download the OData Visualizer.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://visualstudiogallery.msdn.microsoft.com/en-us/f4ac856a-796e-4d78-9a3d-0120d8137722" href="http://visualstudiogallery.msdn.microsoft.com/en-us/f4ac856a-796e-4d78-9a3d-0120d8137722"&gt;http://visualstudiogallery.msdn.microsoft.com/en-us/f4ac856a-796e-4d78-9a3d-0120d8137722&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;After installing. some time you may need to enable the OData Visualzier. To do go to Tools ( VS.NET 2010 IDE) and select Extension Manger then select OData Visualizer&lt;/p&gt;  &lt;p&gt;and Click Enable and restart your VS.NET IDE.&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xXjXdNkI/AAAAAAAAB7k/UH-2EHVwPZs/s1600-h/image%5B87%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xYc3SQoI/AAAAAAAAB7o/CVi3NuhYVYg/image_thumb%5B57%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt;  &lt;p&gt;In order to use OData Visualizer we need to have WCF Data Service Reference in your project. so let us create our own&amp;#160; WCF Data Service.&lt;/p&gt;  &lt;p&gt;First Create ASP.NET Web Application and Add WCF Data Service Template.&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xY35UF0I/AAAAAAAAB7s/8Ri_lvhUlPw/s1600-h/image%5B93%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xZlBsr1I/AAAAAAAAB7w/DS_RUM6SHP0/image_thumb%5B63%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt;&amp;#160; &lt;p&gt;Next we need to add or select the Data Source which we are going to Expose as&amp;#160; WCF Data Service. Here I am going to use one of the Free Database from CodePlex site the DB called Chinook.&amp;#160; Next we are going to use ADO.NET Entity Data Model to create our Data model.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xaDfbRGI/AAAAAAAAB70/QWjm9yPwma4/s1600-h/image%5B102%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xaqR4pkI/AAAAAAAAB74/yoVCwqcJ3So/image_thumb%5B72%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Now Just follow the Wizard and create your Data Model . &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xaxbncRI/AAAAAAAAB78/B5lHbLH-Otw/s1600-h/image%5B110%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xb_PAPdI/AAAAAAAAB8A/oScJLcAMvBg/image_thumb%5B80%5D.png?imgmax=800" width="530" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now open .SVC Service file and edit Data entity and set Entity Access Rule as shown below . Here I am exposing all Entity with All Access Rights. &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Here is the list of Access Rights we can set&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xcKj2ZQI/AAAAAAAAB8E/pHz3I3C3TZU/s1600-h/image%5B48%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xcux8kCI/AAAAAAAAB8I/Vd8SsM5bf-4/image_thumb%5B28%5D.png?imgmax=800" width="283" height="307" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xczAWicI/AAAAAAAAB8M/2OYtuz9HPlI/s1600-h/image%5B47%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xdVk6zGI/AAAAAAAAB8Q/8e53pM0P7FM/image_thumb%5B27%5D.png?imgmax=800" width="640" height="208" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Now compile the project and Browse the Service in IE .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xeTE3WoI/AAAAAAAAB8U/0tkUxhQPGhQ/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xfQfilxI/AAAAAAAAB8Y/npzu47AMTHI/image_thumb%5B26%5D.png?imgmax=800" width="640" height="445" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now our WCF Data service ready now we need client project to consume. Let us add another Project, here I am going to use console application as client for WCF Data Service for the demo purpose to&amp;#160; show how to use OData Visualzier.&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xf-7GPRI/AAAAAAAAB8c/5PqTVYPKFLY/s1600-h/image%5B45%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xguROBkI/AAAAAAAAB8g/_UkOxHTfE8E/image_thumb%5B25%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt;&amp;#160; &lt;p&gt;Now we need to add&amp;#160; WCF Data Service Reference to console application client&amp;#160; project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xhUjPLsI/AAAAAAAAB8k/pslDMLyugSQ/s1600-h/image%5B53%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xhxKIWMI/AAAAAAAAB8o/QZrG4oof1lM/image_thumb%5B33%5D.png?imgmax=800" width="589" height="480" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After adding Service Reference. Now right click on added Service reference and select View in Diagram.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xj-XOKEI/AAAAAAAAB8s/JWQVIwssJhk/s1600-h/image%5B54%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xkX68RnI/AAAAAAAAB8w/iUm7nm41eHw/image_thumb%5B34%5D.png?imgmax=800" width="626" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now click Open Data Protocol Model Browser link on Design surface and drag and drop the Entity to the Design surface or you can right click and select Show in Diagram as well.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xkvhaKzI/AAAAAAAAB80/08Ow_k3JXgU/s1600-h/image%5B64%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xlQxbetI/AAAAAAAAB84/Ql2Dw4WrEus/image_thumb%5B40%5D.png?imgmax=800" width="417" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xmr6CsLI/AAAAAAAAB88/xW6kP7ru5dw/s1600-h/image%5B78%5D%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image[78]" border="0" alt="image[78]" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xnBtCIsI/AAAAAAAAB9A/EwMWhQg4GBM/image%5B78%5D_thumb%5B2%5D.png?imgmax=800" width="575" height="486" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160; In OData Model Browser shows all the aspects of the WCF Data service. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xnkJIWEI/AAAAAAAAB9E/kzFP9rjjZ8w/s1600-h/image%5B77%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xopGLr9I/AAAAAAAAB9I/uCsGlibENlU/image_thumb%5B49%5D.png?imgmax=800" width="425" height="671" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here is the another view&amp;#160; where you can see only Entity Names and it relations.&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xoyPkUVI/AAAAAAAAB9M/uSJBUoLr2m4/s1600-h/image%5B70%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xpSY2uEI/AAAAAAAAB9Q/EVJJ2OXJe40/image_thumb%5B44%5D.png?imgmax=800" width="646" height="436" /&gt;&lt;/a&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xpkH32XI/AAAAAAAAB9U/eqiniYFFaJg/s1600-h/image%5B145%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7_xp05Jm-I/AAAAAAAAB9Y/BbHYl5-HgqY/image_thumb%5B103%5D.png?imgmax=800" width="44" height="43" /&gt;&lt;/a&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;h4&gt;Netflix has partnered with Microsoft to create an OData API for the Netflix catalog information. here is the Here is the link for NetFlix OData protocol&amp;#160;&amp;#160; &lt;a title="http://odata.netflix.com/Catalog/" href="http://odata.netflix.com/Catalog/"&gt;http://odata.netflix.com/Catalog/&lt;/a&gt;.&lt;/h4&gt;  &lt;p&gt;Let us add Netflix service to our client project and view with OData Visualizer.&lt;/p&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xqpWd-lI/AAAAAAAAB9c/78G1cGp2Bv0/s1600-h/image%5B127%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7_xrHTvVjI/AAAAAAAAB9g/R25S4XcpCEE/image_thumb%5B93%5D.png?imgmax=800" width="593" height="484" /&gt;&lt;/a&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7_xsOXBZhI/AAAAAAAAB9k/u_zNVvnFl3w/s1600-h/image%5B156%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7_xs_0Dy6I/AAAAAAAAB9o/xh4N8vOfRMA/image_thumb%5B114%5D.png?imgmax=800" width="646" height="414" /&gt;&lt;/a&gt;  &lt;p&gt;This OData Visualizer help us to understand Entity relations and their different aspects. There is option to export this Diagram as XPS file format as well. &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7186980955305980593?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7186980955305980593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7186980955305980593' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7186980955305980593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7186980955305980593'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/open-data-protocol-visualizer.html' title='Open Data Protocol Visualizer'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S7_xYc3SQoI/AAAAAAAAB7o/CVi3NuhYVYg/s72-c/image_thumb%5B57%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4721673307909084127</id><published>2010-04-08T00:26:00.001-05:00</published><updated>2010-04-08T00:26:04.446-05:00</updated><title type='text'>What is IFilters?</title><content type='html'>&lt;p&gt;IFilters is a plug-in that can be used by Microsoft Index server or Desktop search to search third-party file types. In SharePoint IFilters Plug-in are used to Crawl and Index the third-party Files such as pdf, sas etc.&lt;/p&gt;  &lt;p&gt;SharePoint 2010 comes with IFilters preconfigured to allow it to crawl through Microsoft Office file types from all versions of Microsoft Office (.doc, .docx, .xls, .xlsx, .pptx, et cetera.) and several other file types out of the box. A common file type used in many organizations is the Portable Document Format (PDF) file type, which cannot be indexed fully by SharePoint 2010 out of the box. In order to be able to perform search queries on text within a PDF document, a PDF IFilter would need to be installed on the SharePoint server before the search crawlers can crawl through the text of the document.&lt;/p&gt;  &lt;p&gt;Here are the list of steps we need to perform .&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Add pdf document icon to the 14 hives folder C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\IMAGES &lt;/li&gt;    &lt;li&gt;Add file type entry to DOCICON.XML file which is located&amp;#160; @C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML &lt;/li&gt;    &lt;li&gt;Add the following line to&amp;#160; DOCICON.XML file &amp;lt;Mapping Key=&amp;quot;pdf&amp;quot; Value=&amp;quot;pdf16.gif&amp;quot;/&amp;gt; &lt;/li&gt;    &lt;li&gt;Install the IFilter plug-in for PDF &lt;/li&gt;    &lt;li&gt;Reset the IIS. &lt;/li&gt;    &lt;li&gt;Now go to      &lt;h3&gt;&lt;font size="2"&gt;Central Administration-&amp;gt;Manage service applications&amp;gt;Search Service Application: Manage File Types&amp;#160; add pdf file type and Start Full Crawl.&lt;/font&gt;&lt;/h3&gt;      &lt;p&gt;&amp;#160;&lt;/p&gt;     &lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S71o5_AwIEI/AAAAAAAAB7c/5bdCug30CQ4/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S71o66TZetI/AAAAAAAAB7g/9YCNNhteY_c/image_thumb%5B3%5D.png?imgmax=800" width="739" height="541" /&gt;&lt;/a&gt;       &lt;p&gt;Nandri(Thanks)&lt;/p&gt;      &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4721673307909084127?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4721673307909084127/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4721673307909084127' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4721673307909084127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4721673307909084127'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/what-is-ifilters.html' title='What is IFilters?'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S71o66TZetI/AAAAAAAAB7g/9YCNNhteY_c/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7933186469088444419</id><published>2010-04-07T09:27:00.001-05:00</published><updated>2010-04-07T09:29:52.750-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Creating Connectable Web Parts using SharePoint 2010 Visual Web Part.</title><content type='html'>&lt;p&gt;In SharePoint 2010 we can create two type of web parts.&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7yV68pWKjI/AAAAAAAAB2o/QRAIJm_4Hbc/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yV7qb0uCI/AAAAAAAAB2s/FDaEQiDaO9k/image_thumb%5B28%5D.png?imgmax=800" width="646" height="105" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;font color="#666666"&gt;Here we are going to use Visual Web Part template to create Connectable Web parts. In&amp;#160; Asp.NET the Web Parts are communicated via &lt;strong&gt;interfaces&lt;/strong&gt;&amp;#160; this allows Web Parts to exchange information with each other at run time.&amp;#160; This Interfaces will define the message structure which is passed between two connectable Web Parts. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#666666"&gt;Here are the steps we need to do to create a Connectable web parts .&lt;/font&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;font color="#666666"&gt;Define the Interface that will specify the data we wanted pass or exchange from one web part to another web part.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#666666"&gt;Create Provider Web Part. &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font color="#666666"&gt;Consumer Web Part.&lt;/font&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font color="#666666"&gt;First Fire of VS.NET 2010 and&amp;#160; create Empty SharePoint project.&amp;#160;&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7yV8cCeKQI/AAAAAAAAB4c/1m2BvGyc8c0/s1600-h/image%5B145%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7yV912u8jI/AAAAAAAAB4g/dpW-G-c90vc/image_thumb%5B115%5D.png?imgmax=800" width="646" height="448" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now Visual studio&amp;#160; provides you to select Deployment options.&amp;#160; &lt;strong&gt;Here we are going with&amp;#160; Farm based solution. because Visual Web part can not be deployed in&amp;#160; Sandboxed solution .&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7yV-WYNibI/AAAAAAAAB24/XePNE0i4FhA/s1600-h/image%5B132%5D.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yV_UrJJ2I/AAAAAAAAB28/FyCI3FhJ1hE/image_thumb%5B104%5D.png?imgmax=800" width="609" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you select Sandboxed solution and deploy to SharePoint you get the following error.&lt;/p&gt; &lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7yV_8XGeVI/AAAAAAAAB4o/Wg8DrRQ5oKw/s1600-h/image%5B146%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWAdD1u1I/AAAAAAAAB40/brcdc6Z0EBs/image_thumb%5B116%5D.png?imgmax=800" width="644" height="57" /&gt;&lt;/a&gt;   &lt;p&gt;Now we need to add the Interface to our project . Here I am calling it&amp;#160; &lt;strong&gt;ICommunicationChannel.&lt;/strong&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;public interface ICommunicationChannel      &lt;br /&gt;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int GetInvoiceId { get; }       &lt;br /&gt;&amp;#160;&amp;#160; }&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now we need to Add both Provider &amp;amp; Consumer Visual&amp;#160; Web Parts . &lt;/p&gt;  &lt;p&gt;In provider web part UI just add&amp;#160; Dropdown list box.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWA95BP8I/AAAAAAAAB44/ircH8tLCz18/s1600-h/image%5B147%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7yWB84wrBI/AAAAAAAAB5A/vSQ7VmZeU6o/image_thumb%5B117%5D.png?imgmax=800" width="646" height="448" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Now add Consumer web part UI just&amp;#160; add GridView control.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWCSl1DsI/AAAAAAAAB5I/9n0o9z9xw6o/s1600-h/image%5B148%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWDV01olI/AAAAAAAAB5M/o7wMNHUOOfo/image_thumb%5B118%5D.png?imgmax=800" width="646" height="448" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Now open of the Provider Web part and Add our Interface to Implement as shown here. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7yWEjk7oaI/AAAAAAAAB5Y/15UjOeJcG1c/s1600-h/image%5B149%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7yWFSJu4rI/AAAAAAAAB5c/cOVAVwB7n_Y/image_thumb%5B119%5D.png?imgmax=800" width="646" height="353" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now&amp;#160; open of the Consumer web part&amp;#160; and add method to receive Provider Web Part message.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7yWGRJSYgI/AAAAAAAAB5o/LC_DflKFJNk/s1600-h/image%5B150%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7yWHEzN5NI/AAAAAAAAB5s/jAIYNFHxfvA/image_thumb%5B120%5D.png?imgmax=800" width="646" height="357" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I am using&amp;#160; LINQ to SQL to connect my Data Source. Invoice and Invoice Line are tables from my Database. &lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7yWHVjIGNI/AAAAAAAAB5w/krxhCAJ7SUQ/s1600-h/image%5B151%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7yWIi-xTGI/AAAAAAAAB58/pHyWapceGC0/image_thumb%5B121%5D.png?imgmax=800" width="646" height="297" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;br /&gt;Now we need to populate the drop down List box with Invoice ID’s from our Database table called Invoice Line.   &lt;br /&gt;  &lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7yWJO65QaI/AAAAAAAAB6E/ZgpRC0hOb10/s1600-h/image%5B152%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWKGhki2I/AAAAAAAAB6M/foaMvVop4MU/image_thumb%5B122%5D.png?imgmax=800" width="646" height="363" /&gt;&lt;/a&gt;   &lt;br /&gt;  &lt;br /&gt;  &lt;p&gt;In consumer web part we need to Query the Invoice Details information for the Invoice ID passed by Provider web part . [which is selected in Provider web part drop down list].&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWK19nr5I/AAAAAAAAB6U/WNpqiqaRuv8/s1600-h/image%5B153%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWLk0y2YI/AAAAAAAAB6c/Ajbjeu1GQpA/image_thumb%5B123%5D.png?imgmax=800" width="646" height="372" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Now build the project correct it if any compiler errors and then&amp;#160; deploy to SharePoint. Now go to the SharePoint site where you wanted add this web parts and test.&lt;/p&gt;  &lt;p&gt;Click Edit -&amp;gt; Insert and select Web Part button from the Ribbon menu now select Custom from Categories -&amp;gt;select Provider web part-&amp;gt;&amp;#160; click add button this will adds provider web part to the Page. follow the same steps to add Consumer Web Part as well .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWMfDrkKI/AAAAAAAAB6k/Nix2xUWnoZA/s1600-h/image%5B154%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWNOi2blI/AAAAAAAAB6o/T3t0LLcil6k/image_thumb%5B124%5D.png?imgmax=800" width="644" height="209" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once Both Provider and Consumer web parts are added to the Page now we need to establish the connection between these two web parts.&amp;#160; To do click Edit Web Part on Provider web Part you will see the connections and select Consumer web Part as shown below.&amp;#160;&amp;#160; &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWONHW4AI/AAAAAAAAB6s/UpEXT-991rk/s1600-h/image%5B155%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWOed31-I/AAAAAAAAB60/aK-aEfFuu08/image_thumb%5B125%5D.png?imgmax=800" width="644" height="133" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Here is the result of Connectable Web Parts.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7yWPBggQ-I/AAAAAAAAB64/BwSw-afJcBQ/s1600-h/image%5B156%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7yWPdPBJmI/AAAAAAAAB7A/QXRnlHozVlc/image_thumb%5B126%5D.png?imgmax=800" width="644" height="103" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7933186469088444419?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7933186469088444419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7933186469088444419' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7933186469088444419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7933186469088444419'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/04/creating-connectable-web-parts-using.html' title='Creating Connectable Web Parts using SharePoint 2010 Visual Web Part.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S7yV7qb0uCI/AAAAAAAAB2s/FDaEQiDaO9k/s72-c/image_thumb%5B28%5D.png?imgmax=800' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1957702936362636802</id><published>2010-03-30T14:19:00.000-05:00</published><updated>2010-03-30T14:20:30.487-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Using Microsoft OData Protocol (formerly Known as ADO.NET Services) to expose our Data.</title><content type='html'>&lt;p&gt;OData – Open Data Protocol is developed by Microsoft to be an open standard for exposing the data across Internet. This is OData protocol is based on REST and JOSN.&lt;/p&gt;  &lt;h4&gt;Where OData&amp;#160; protocol is used?&lt;/h4&gt;  &lt;ol&gt;   &lt;li&gt;SharePoint 2010 ( ListData.Svc) &lt;/li&gt;    &lt;li&gt;Windows Azure &lt;/li&gt;    &lt;li&gt;The Project code name Dallas &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;In Microsoft.NET&amp;#160; we can expose database through OData Protocol using WCF Data Service (FKA : ADO.NET Data Services).&lt;/p&gt;  &lt;p&gt;First Create Empty ASP.NET Web Application project. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7JOw7vGYVI/AAAAAAAAB1Y/9xM6oG9MprU/s1600-h/image%5B92%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7JOxsxWGiI/AAAAAAAAB1c/YFzHnebREzY/image_thumb%5B68%5D.png?imgmax=800" width="598" height="422" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Add WCF Data Service Template to the newly created ASP.NET Web Application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7JOyTkGkJI/AAAAAAAAB1g/wYP4iTX0Oi4/s1600-h/image%5B93%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7JOzCvCr0I/AAAAAAAAB1k/5toIPU3DJgY/image_thumb%5B69%5D.png?imgmax=800" width="607" height="426" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Now we need to Create our Data model which we are going to expose via OData. Here we can use LINQ to SQL or EF ( Entity Framework).&lt;/p&gt;  &lt;p&gt;Here I am going to sue Entity Framework.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7JOzsNRj4I/AAAAAAAAB1o/vR5_s8ZYKi8/s1600-h/image%5B94%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7JO0Zq5xDI/AAAAAAAAB1s/7pbyZ4WTUtw/image_thumb%5B70%5D.png?imgmax=800" width="627" height="440" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;We are going to generate our model from existing Database.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7JO08pfgbI/AAAAAAAAB1w/zwNE6riz6T0/s1600-h/image%5B95%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S7JO1ZDfsbI/AAAAAAAAB10/dF4VQe7lWSI/image_thumb%5B71%5D.png?imgmax=800" width="632" height="566" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Provide the DB connection string Information.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7JO1660HxI/AAAAAAAAB14/dLJ02aOHPs0/s1600-h/image%5B96%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S7JO3EqTu_I/AAAAAAAAB18/kJULd0ud9CY/image_thumb%5B72%5D.png?imgmax=800" width="645" height="624" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the Tables you want to add to our Model.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S7JO3eYQe_I/AAAAAAAAB2A/D_XJ_rBNW3I/s1600-h/image%5B97%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7JO4VLlZvI/AAAAAAAAB2E/9I3GI2wNfmo/image_thumb%5B73%5D.png?imgmax=800" width="650" height="580" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S7JO4yorNWI/AAAAAAAAB2I/kpqax5h0jpo/s1600-h/image%5B98%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7JO5v3fAYI/AAAAAAAAB2M/4GBvzvZxbFQ/image_thumb%5B74%5D.png?imgmax=800" width="472" height="540" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Set Entity permission. Here I am setting all entity have Read access. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7JO6AU7ZRI/AAAAAAAAB2Q/OE2s2iHOY88/s1600-h/image%5B99%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S7JO6nbAj0I/AAAAAAAAB2U/oayP7cKSzf0/image_thumb%5B75%5D.png?imgmax=800" width="753" height="319" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; Now hit F5 before that set start or up page as MyAlbum.svc.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S7JO7QgDyuI/AAAAAAAAB2Y/h1pU94p2jHc/s1600-h/image%5B100%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7JO8QVkeMI/AAAAAAAAB2c/EfeIsJ-EXeI/image_thumb%5B76%5D.png?imgmax=800" width="578" height="400" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Using REST API format we can access or query the Data . for example to get all customers Data we cause use the following REST URI&lt;/p&gt;  &lt;p&gt;&lt;a title="http://localhost:9570/MyAlbum.svc/Customers" href="http://localhost:9570/MyAlbum.svc/Customers"&gt;http://localhost:9570/MyAlbum.svc/Customers&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S7JO-Whah_I/AAAAAAAAB2g/281Q4rS8tUI/s1600-h/image%5B101%5D.png"&gt;&lt;img style="margin: 0px 20px; display: inline" title="image" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S7JO_Vz8ddI/AAAAAAAAB2k/dCD2g0jx6lQ/image_thumb%5B77%5D.png?imgmax=800" width="614" height="540" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;Sreenivasaragavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1957702936362636802?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1957702936362636802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1957702936362636802' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1957702936362636802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1957702936362636802'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/using-microsoft-odata-protocol-formerly.html' title='Using Microsoft OData Protocol (formerly Known as ADO.NET Services) to expose our Data.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S7JOxsxWGiI/AAAAAAAAB1c/YFzHnebREzY/s72-c/image_thumb%5B68%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-9072603072639851514</id><published>2010-03-28T04:53:00.001-05:00</published><updated>2010-03-28T04:53:43.937-05:00</updated><title type='text'>Calling WCF Service (Hosted in SharePoint 2010) From Silverlight client .</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;In My previous blog post&amp;#160; I showed how to host custom WCF service inside SharePoint 2010. In this blog post we are going to see how to consume the same service from SilverLight client. here is the link which talks about how to host custom WCF Service in SharePoint 2010 &lt;/font&gt;&lt;a title="http://mstecharchitect.blogspot.com/2010/03/hosting-wcf-service-inside-sharepoint.html" href="http://mstecharchitect.blogspot.com/2010/03/hosting-wcf-service-inside-sharepoint.html"&gt;&lt;font size="4"&gt;http://mstecharchitect.blogspot.com/2010/03/hosting-wcf-service-inside-sharepoint.html&lt;/font&gt;&lt;/a&gt;&lt;font size="4"&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Here are steps we are going to follow.&lt;/font&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;font size="4"&gt; First Create a new SilverLight Project. &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Add WCF Service Reference.&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;Call the WCF Service.&lt;/font&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;Step 1:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;First Fire up VS.NET 2010 and Create SilverLight Application project.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S68nGeZgBlI/AAAAAAAAB04/fKIxI8z2P38/s1600-h/image%5B23%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S68nGz-KefI/AAAAAAAAB08/bDm_rA9xPzY/image_thumb%5B15%5D.png?imgmax=800" width="646" height="448" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;u&gt;Step 2:&lt;/u&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now add WCF Service Reference to newly created SilverLight project. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S68nHCSWEqI/AAAAAAAAB1A/bGrbFQpiyzs/s1600-h/image%5B22%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S68nHg4UxSI/AAAAAAAAB1E/iX2qGlvfo-k/image_thumb%5B14%5D.png?imgmax=800" width="646" height="245" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S68nIM_syfI/AAAAAAAAB1I/Eji2vXmhZrU/s1600-h/image%5B24%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S68nIjZJj2I/AAAAAAAAB1M/ccMcremufNY/image_thumb%5B16%5D.png?imgmax=800" width="645" height="486" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;u&gt;Step 3:&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Collections.Generic;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Linq;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Net;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Controls;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Documents;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Input;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Media;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Media.Animation;      &lt;br /&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;System.Windows.Shapes;      &lt;br /&gt;      &lt;br /&gt;&lt;span style="color: blue"&gt;namespace &lt;/span&gt;SilverlightApplicationCallingWCFsvc      &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public partial class &lt;/span&gt;&lt;span style="color: #2b91af"&gt;MainPage &lt;/span&gt;:&lt;/font&gt;&lt;font size="3"&gt;&lt;span style="color: #2b91af"&gt;UserControl       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;public &lt;/span&gt;MainPage()      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; InitializeComponent();      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color: blue"&gt;private void &lt;/span&gt;Button_Click(&lt;span style="color: blue"&gt;object &lt;/span&gt;sender, &lt;span style="color: #2b91af"&gt;RoutedEventArgs &lt;/span&gt;e)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; SharePointWCFServiceReference.&lt;span style="color: #2b91af"&gt;CustomServiceClient &lt;/span&gt;svc = &lt;span style="color: blue"&gt;new &lt;/span&gt;SharePointWCFServiceReference.&lt;span style="color: #2b91af"&gt;CustomServiceClient&lt;/span&gt;();      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; svc.GetTimeCompleted += &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;EventHandler&lt;/span&gt;&amp;lt;SharePointWCFServiceReference.&lt;span style="color: #2b91af"&gt;GetTimeCompletedEventArgs&lt;/span&gt;&amp;gt;(svc_GetTimeCompleted); svc.GetTimeAsync(); } &lt;span style="color: blue"&gt;void &lt;/span&gt;svc_GetTimeCompleted(&lt;span style="color: blue"&gt;object &lt;/span&gt;sender, SharePointWCFServiceReference.&lt;span style="color: #2b91af"&gt;GetTimeCompletedEventArgs &lt;/span&gt;e)      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; txtfrommoss.Text = e.Result.ToString ();      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;}&lt;/font&gt;    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;In the above code snippet we are creating&amp;#160; the instance of WCF Serviceclient class and Invoking&amp;#160; the WCF Method. In Silverlight Application the service calls are made as Asynchronous calls. To call GetTime Method&amp;#160; in asynchronous we need to add event Handler for the GetTime Mehtod.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt; Now Hit F5 and test the app.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;pre class="code"&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S68nJbjV9LI/AAAAAAAAB1Q/DVANMxoFcAI/s1600-h/image%5B25%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S68nJ8CQknI/AAAAAAAAB1U/5llB5KzkUhU/image_thumb%5B17%5D.png?imgmax=800" width="646" height="257" /&gt;&lt;/a&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Nandri(Thanks)&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Sreenivasaragavan&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-9072603072639851514?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/9072603072639851514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=9072603072639851514' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/9072603072639851514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/9072603072639851514'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/calling-wcf-service-hosted-in.html' title='Calling WCF Service (Hosted in SharePoint 2010) From Silverlight client .'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S68nGz-KefI/AAAAAAAAB08/bDm_rA9xPzY/s72-c/image_thumb%5B15%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-87218648241719668</id><published>2010-03-28T04:19:00.001-05:00</published><updated>2010-03-28T04:21:58.809-05:00</updated><title type='text'>Hosting WCF Service Inside SharePoint 2010</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;In SharePoint 2010&amp;#160; Out of the box all the Lists are exposed as WCF Restful Service using OData Protocol. Here is path or URL to access SharePoint Lists WCF Restful Services .&amp;#160;&amp;#160; &lt;/font&gt;&lt;a href="http://ServerName/_vti_bin/ListData.svc"&gt;&lt;font size="4"&gt;http://ServerName/_vti_bin/ListData.svc&lt;/font&gt;&lt;/a&gt;&lt;font size="4"&gt;. The following screenshot shows the collections of List from my SharePoint site.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S68e6E6tZ7I/AAAAAAAAByo/eNbctT3Gez8/s1600-h/image%5B87%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S68e7ViPhfI/AAAAAAAABys/DSdOXXNWjCo/image_thumb%5B65%5D.png?imgmax=800" width="826" height="671" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;In this blog post&amp;#160; we are going to see how to host &lt;strong&gt;Custom WCF service Inside SharePoint 2010&lt;/strong&gt; and we will consume the same service from &lt;strong&gt;Silverlight client&lt;/strong&gt; . Up front we know that we are going to call this WCF service from Silverlight so i am going to host this service in &lt;strong&gt;basicHttpBinding.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;First&amp;#160; create a empty SharePoint project.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S68e8EszMHI/AAAAAAAAByw/Mh_dCzbWI70/s1600-h/image%5B85%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S68e9FUWMeI/AAAAAAAABy8/Wgx8ukbHDHw/image_thumb%5B63%5D.png?imgmax=800" width="826" height="591" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now we need to provide the site where you wanted to host this WCF service and how we are going to deploy it either &lt;strong&gt;SandBox&lt;/strong&gt; or&lt;/font&gt;&lt;strong&gt;&lt;font size="4"&gt; Server Farm.&amp;#160; Here&amp;#160; i am going to choose Farm solution.&lt;/font&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S68e9dD87QI/AAAAAAAABzA/3tDqtbRuWEE/s1600-h/image%5B84%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S68e-hpNFEI/AAAAAAAABzM/3EuxenP533s/image_thumb%5B62%5D.png?imgmax=800" width="830" height="583" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Once the project is successfully created. Now we need to Add&amp;#160; &lt;strong&gt;SharePoint ISAPI Mapping&lt;/strong&gt; folder. To do this right clicking the project and choose the SharePoint Mapped Folder as shown below.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S68e_B_fWyI/AAAAAAAABzQ/XVkrLAqoJsg/s1600-h/image%5B83%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S68e_6x8-UI/AAAAAAAABzU/oHarjDtR2ak/image_thumb%5B61%5D.png?imgmax=800" width="836" height="614" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Adding /Mapping SharePoint&amp;#160; ISAPI Folder.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S68fAD0Zb5I/AAAAAAAABxo/MdM9flXVJms/s1600-h/image%5B19%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S68fAn_ddhI/AAAAAAAABxs/rXUeP2a8IXE/image_thumb%5B9%5D.png?imgmax=800" width="377" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now add C# Interface file and Class File to define the WCF Service Contract and Service implementation.&amp;#160; and also we need to add .svc and web.config file to host the service.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S68fBAfx9pI/AAAAAAAABxw/3h_rtw1C758/s1600-h/image%5B76%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S68fB9v3KyI/AAAAAAAABx0/QsTaPhqbJBE/image_thumb%5B54%5D.png?imgmax=800" width="869" height="487" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;Simple WCF Service Contract:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Linq;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Runtime.Serialization;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.ServiceModel;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.SharePoint;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; WCFSVCINSHAREPOINT&lt;br /&gt;{&lt;br /&gt;    [ServiceContract]&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;interface&lt;/span&gt; ICustomService&lt;br /&gt;    {&lt;br /&gt;        [OperationContract]&lt;br /&gt;        &lt;span class="kwrd"&gt;string&lt;/span&gt; GetTime();&lt;br /&gt;     }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;font size="4"&gt;&lt;font face="Trebuchet MS"&gt;&lt;strong&gt;&lt;u&gt;Service Implementation&lt;/u&gt;&lt;/strong&gt; &lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Linq;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Runtime.Serialization;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.ServiceModel;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; Microsoft.SharePoint;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.ServiceModel.Activation;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; WCFSVCINSHAREPOINT&lt;br /&gt;{&lt;br /&gt;    [ServiceBehavior]&lt;br /&gt;    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; CustomService : ICustomService&lt;br /&gt;    { &lt;br /&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; GetTime()&lt;br /&gt;        {&lt;br /&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; DateTime.Now.ToString();&lt;br /&gt;        }&lt;br /&gt; &lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;.SVC file&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S68fCJYasoI/AAAAAAAABzY/rSXl1spJmwo/s1600-h/image%5B82%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S68fCvdKBLI/AAAAAAAABzg/l3XWRhNHZxI/image_thumb%5B60%5D.png?imgmax=800" width="916" height="89" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;You can use .NET Reflector to get the following ServiceHost attributes &lt;strong&gt;PublicKeyToken , Assembly Type name, Version&lt;/strong&gt;. But i&amp;#160; used the&amp;#160;&amp;#160; Strong name&amp;#160; (SN.EXE ) Utility to get all the above attributes . Here is the sample how to use SN.EXE&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S68fC2xvhcI/AAAAAAAABzk/7C8NIxTc6Lg/s1600-h/image%5B78%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S68fDmQwmLI/AAAAAAAABzs/vC0EDRTfPx0/image_thumb%5B56%5D.png?imgmax=800" width="924" height="382" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;&lt;u&gt;Web.Config file&lt;/u&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S68fEDZDiSI/AAAAAAAABzw/qNbj7Y4xjEY/s1600-h/image%5B79%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S68fFGH2clI/AAAAAAAAB0M/QZkqQjXhkLc/image_thumb%5B57%5D.png?imgmax=800" width="919" height="572" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Now Fire up the IE and Browse the WCF Service. [Note: Make sure that your SharePoint Site has Anonymous access as&amp;#160; Shown below.]&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S68fFmaY_7I/AAAAAAAAB0Q/jMbka7oYRu0/s1600-h/image%5B80%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S68fGVNHG1I/AAAAAAAAB0U/nSEq7c7VOYk/image_thumb%5B58%5D.png?imgmax=800" width="920" height="372" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S68fHLuzttI/AAAAAAAAB0Y/6En6nO8REhc/s1600-h/image%5B81%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S68fI3fZNFI/AAAAAAAAB0o/onANnM1k9h4/image_thumb%5B59%5D.png?imgmax=800" width="925" height="669" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Next Blog post we will see how to call this Service from Silverlight Client.&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Nandri(Thanks)&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;SreenivasaRagavan&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-87218648241719668?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/87218648241719668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=87218648241719668' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/87218648241719668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/87218648241719668'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/hosting-wcf-service-inside-sharepoint.html' title='Hosting WCF Service Inside SharePoint 2010'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S68e7ViPhfI/AAAAAAAABys/DSdOXXNWjCo/s72-c/image_thumb%5B65%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1803469407268591235</id><published>2010-03-21T20:15:00.001-05:00</published><updated>2010-03-21T20:18:13.998-05:00</updated><title type='text'>Building a Windows 7 Phone Weather  Application Using SilverLight</title><content type='html'>&lt;p&gt;&lt;font size="3"&gt;This WP7 application takes Zip code as a input from user and calls the Web Service (.ASMX) using &lt;strong&gt;HTTP-GET&lt;/strong&gt;. In this CTP SDK bits we can not add Service Reference to the&amp;#160; project so here we are going to use &lt;strong&gt;WebClient&lt;/strong&gt; class to invoke the Web Service and get the Response as XML string&amp;#160; then using LINQ TO XML we are going to parse the XML . Here is the look and feel of the WP7 Weather application&amp;#160; once we finish building this.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;To get weather information by Zip code i am using the following&amp;#160; XML Web Service.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.webservicex.net/WeatherForecast.asmx" href="http://www.webservicex.net/WeatherForecast.asmx"&gt;&lt;font size="5"&gt;http://www.webservicex.net/WeatherForecast.asmx&lt;/font&gt;&lt;/a&gt;&amp;#160;&lt;font size="3"&gt;its free.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEfbGA1GI/AAAAAAAABwA/zumi4NsnqgE/s1600-h/image%5B59%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6bEgWZxa3I/AAAAAAAABwE/pzZkj1zm3HY/image_thumb%5B39%5D.png?imgmax=800" width="398" height="772" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="3"&gt;Steps to Create this application.&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;font size="3"&gt;Create New Windows Phone 7 application project&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3"&gt;Build UI using XAML code.&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3"&gt;Get Input from user and call the .ASMX Web service (HTTP-GET)&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3"&gt;Get the Response and Parse it and create UDT ( User Defined Type which stores XML Data).&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3"&gt;Bind UDT to List BOX.&lt;/font&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font size="3"&gt;First Create New Windows Phone 7 application . &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6bEhei3dgI/AAAAAAAABwI/6BCP_mR75j4/s1600-h/image%5B40%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6bEi7cksjI/AAAAAAAABwM/OZCnc9NKA5U/image_thumb%5B28%5D.png?imgmax=800" width="1028" height="712" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Here is the XAML code for the above Weather Apps GUI.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEj-NmQdI/AAAAAAAABwQ/qrmV5J4vmkk/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6bElVAgSaI/AAAAAAAABwU/r1YRw5vT1wA/image_thumb%5B30%5D.png?imgmax=800" width="1036" height="679" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Here i am using&lt;strong&gt; InputScope&lt;/strong&gt; property of Text Box to show only numeric keyboard when user enter Zip code in Textbox. Here i am setting &lt;strong&gt;Inputsopename&lt;/strong&gt;&amp;#160;&lt;strong&gt;NameValue&lt;/strong&gt; to &lt;strong&gt;PostalCode&lt;/strong&gt;.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6bEmE1SdVI/AAAAAAAABwY/jbqB1CHTtpM/s1600-h/image%5B64%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEmtaTgCI/AAAAAAAABwc/gRJsUuN9P1M/image_thumb%5B42%5D.png?imgmax=800" width="644" height="246" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6bEnI5eABI/AAAAAAAABwg/48MRS-L_RJc/s1600-h/image%5B78%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEoHMBh5I/AAAAAAAABwk/esC_9lgPLyg/image_thumb%5B56%5D.png?imgmax=800" width="496" height="774" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Create the UDT ( User Defined Type) class with the following properties to store XML Weather Data as a .NET Type.&lt;/font&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEoh0rUUI/AAAAAAAABwo/7OvVLMsLx94/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6bEpMQyxQI/AAAAAAAABws/EF-wVuMZEjI/image_thumb%5B16%5D.png?imgmax=800" width="477" height="203" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;In Windows Phone 7 application project&amp;#160; right now we can not add Service Reference so we are going to use &lt;strong&gt;WebClient&lt;/strong&gt; class to invoke the web service. This is Siliverlight application so we need to invoke the Web Service method as &lt;strong&gt;Asynchronous&lt;/strong&gt; call .&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6bEqDSHsxI/AAAAAAAABww/yWNEGBNw7EQ/s1600-h/image%5B43%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6bEqsjfwDI/AAAAAAAABw0/RTjsDsMd8Kg/image_thumb%5B31%5D.png?imgmax=800" width="1037" height="129" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;Once we get the response from Weather WebSerice we are going to use &lt;strong&gt;LINQ TO XML&lt;/strong&gt; to parse the XML data and create the &lt;strong&gt;WeatherData&lt;/strong&gt; UDT type. [ NOTE :We need to add &lt;strong&gt;System.Linq.Xml&lt;/strong&gt; Assembly as reference to our project to parse XML using LINQ]. Once we parse the XML we are setting result to &lt;strong&gt;Listbox&lt;/strong&gt; &lt;strong&gt;Itemsource property.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6bEredagAI/AAAAAAAABw4/kBzFsGGPpZY/s1600-h/image%5B44%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6bEsU_749I/AAAAAAAABw8/BqIv1prDMmk/image_thumb%5B32%5D.png?imgmax=800" width="1037" height="467" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6bEs4u_75I/AAAAAAAABxA/o5WsnlMAsw0/s1600-h/image%5B83%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6bEt9joUwI/AAAAAAAABxE/E99IzfySMfc/image_thumb%5B59%5D.png?imgmax=800" width="400" height="774" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1803469407268591235?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1803469407268591235/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1803469407268591235' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1803469407268591235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1803469407268591235'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/building-windows-7-phone-weather.html' title='Building a Windows 7 Phone Weather  Application Using SilverLight'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S6bEgWZxa3I/AAAAAAAABwE/pzZkj1zm3HY/s72-c/image_thumb%5B39%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-4214613004258578674</id><published>2010-03-20T22:22:00.001-05:00</published><updated>2010-03-20T22:22:01.061-05:00</updated><title type='text'>Windows Azure – BLOB Storage</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;What is BLOB ? –&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Binary Large OBjects. &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Windows Azure basically provides 4 type of storages &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;1) BLOB&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;2) Tables&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;3) Queues&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQnCsjyBI/AAAAAAAABuU/aI1Le-6p6UE/s1600-h/image%5B59%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6WQnqcSpvI/AAAAAAAABuY/55nG5olTxh0/image_thumb%5B33%5D.png?imgmax=800" width="424" height="153" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;4) Drive ( This is new) – NTFS drive.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;In this Blog post i am going to use BLOB storage to store Binary Objects like&amp;#160; Images , Videos , etc&lt;/strong&gt;..&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Blobs can be used to store data that is unstructured. Windows Azure account holder&amp;#160; can create one or more containers to store related collections of blobs. Containers can be setup as either private or public. If a container is setup as public than any internet user will be able to read the blobs contained within it using the proper URL. If a container is marked as private than the secret key that comes with a Windows Azure storage account will be needed to access the blobs within the container. Additionally, if a single Blob is very large then Windows Azure provides tools to break up these large blobs into blocks so that they may be transferred to Windows Azure Blob storage more efficiently.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQoVupQYI/AAAAAAAABuc/vgbzx47rfTM/s1600-h/image%5B4%5D.png"&gt;&lt;font color="#000000" size="4"&gt;&lt;strong&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQo5FfIDI/AAAAAAAABug/O9dWJssi2Kg/image_thumb%5B2%5D.png?imgmax=800" width="640" height="314" /&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQpmgkWJI/AAAAAAAABuk/_TBiLZv13i8/s1600-h/image%5B10%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQqL9ivbI/AAAAAAAABuo/b7hJsX940hk/image_thumb%5B6%5D.png?imgmax=800" width="646" height="251" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;Container Rules&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;font size="4"&gt;&lt;strong&gt;Container name must be a valid Domain Name System (DNS) name, conforming to the following naming rules.&lt;/strong&gt;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;&lt;strong&gt;Must start with a letter or number, and can contain only letters, numbers, and the period (.) and dash(-) characters.&lt;/strong&gt;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;&lt;strong&gt;All letters must be lowercase.&lt;/strong&gt;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;&lt;strong&gt;Must be from 3 to 63 characters long.&lt;/strong&gt;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="4"&gt;&lt;strong&gt;A name cannot contain a dash next to a period.&lt;/strong&gt;&lt;/font&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;The following screenshot shows the Methods of my Windows Azure Service project .Now we are going to create these methods and we will be using in ASP.NET Web UI to Upload&amp;#160; the BLOB into Azure Storage. [Note: Here i am using my local Development Fabric ]&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQqjAssgI/AAAAAAAABus/4_JPLd9RE-s/s1600-h/image%5B16%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6WQrZGP-7I/AAAAAAAABuw/cTgUOYFoE2c/image_thumb%5B10%5D.png?imgmax=800" width="640" height="379" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Here is the ASP.NET Web UI for this application.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6WQsNMo60I/AAAAAAAABu0/P2AX4qvqCxE/s1600-h/image%5B44%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6WQsx86auI/AAAAAAAABu4/GxMNitUaav4/image_thumb%5B24%5D.png?imgmax=800" width="644" height="275" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;First Run VS.NET 2010 as an Administrator&amp;#160; and then create Cloud service project .&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQtpa4bII/AAAAAAAABu8/G7gw6jskT2I/s1600-h/image%5B20%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQuRT-gfI/AAAAAAAABvA/7PavjXqp74s/image_thumb%5B12%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Now add ASP.NET Web Role to it. Open of Default.aspx Code behind file and&amp;#160; Create&amp;#160; CloudBlobClient private variable we will be using more often this.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;u&gt;&lt;strong&gt;InitBlobAccess:&lt;/strong&gt;&lt;/u&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method Create a Local windows Azure Blob storage.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQulUtbnI/AAAAAAAABvE/U8ngOkF_zW4/s1600-h/image%5B36%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQvOwvq_I/AAAAAAAABvI/ZVIqLW2ryvM/image_thumb%5B18%5D.png?imgmax=800" width="644" height="90" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;CreateContainer:&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method will create a container and set the access permission as public . [By default Windows Azure Blob storage permission is private. ]&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQvt6R8wI/AAAAAAAABvM/mMgR_Tf70hE/s1600-h/image%5B37%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6WQwPK8auI/AAAAAAAABvQ/oWO5zpo2gX8/image_thumb%5B19%5D.png?imgmax=800" width="644" height="204" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;DeleteContainer:&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method delete the container by given name.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQwXDSFfI/AAAAAAAABvY/dygO_8aZqNM/s1600-h/image%5B38%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQxCTOJNI/AAAAAAAABvc/7Sxbxuu-t-g/image_thumb%5B20%5D.png?imgmax=800" width="644" height="116" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;ListBlobContainers:&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method&amp;#160; returns all publicly accessible[ permission] containers.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6WQxSBLxFI/AAAAAAAABvg/InYaqQt7VVo/s1600-h/image%5B39%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6WQxgkTrII/AAAAAAAABvk/8zWpUCfYlLc/image_thumb%5B21%5D.png?imgmax=800" width="644" height="96" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;ListBlob:&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method returns a List of all available Blobs for selected (given) container in Dropdown List.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQyDyTqwI/AAAAAAAABvo/WUGfpuFRpMk/s1600-h/image%5B40%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQyWGx09I/AAAAAAAABvs/EwGTPkPjjrs/image_thumb%5B22%5D.png?imgmax=800" width="644" height="110" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="5"&gt;&lt;u&gt;Upload File:&lt;/u&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;This method will enumerate all the uploaded file and load the content into Selected container and create the Blob in Windows Azure Blog Storage.&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQzbTin5I/AAAAAAAABvw/4p8CRkVNcYA/s1600-h/image%5B48%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6WQzzG_pgI/AAAAAAAABv0/2ipRvHoCRik/image_thumb%5B26%5D.png?imgmax=800" width="644" height="253" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Now wire up the above methods with ASP.NET WEB UI and upload the BLOB content and test it.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6WQ04t835I/AAAAAAAABv4/Ze7EJxlR4KM/s1600-h/image%5B52%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6WQ2JI5d3I/AAAAAAAABv8/Niyw1jgLSaI/image_thumb%5B28%5D.png?imgmax=800" width="644" height="422" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;For more on Blob please visit &lt;/strong&gt;&lt;/font&gt;&lt;a title="http://blogs.msdn.com/windowsazure/archive/2009/11/25/windows-azure-storage-at-pdc-2009.aspx" href="http://blogs.msdn.com/windowsazure/archive/2009/11/25/windows-azure-storage-at-pdc-2009.aspx"&gt;&lt;font size="4"&gt;&lt;strong&gt;http://blogs.msdn.com/windowsazure/archive/2009/11/25/windows-azure-storage-at-pdc-2009.aspx&lt;/strong&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Nandri(Thanks)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;SreenivasaRagavan.&lt;/strong&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-4214613004258578674?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/4214613004258578674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=4214613004258578674' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4214613004258578674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/4214613004258578674'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/windows-azure-blob-storage.html' title='Windows Azure – BLOB Storage'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S6WQnqcSpvI/AAAAAAAABuY/55nG5olTxh0/s72-c/image_thumb%5B33%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7484103058217618392</id><published>2010-03-19T21:58:00.001-05:00</published><updated>2010-03-19T21:58:57.078-05:00</updated><title type='text'>Windows Azure – How to Use Table Storage.</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;I am going to create a Windows Azure Application which uses Table Storage to store my TODO Lists or TASKS.&amp;#160; Windows Azure Table Storage is Semi Structured and Query able&amp;#160; Table Storage and its a collections of Entities. These Entity have Primary key and set of Pre defined property.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Windows Azure Table service has two key properties: &lt;b&gt;PartitionKey&lt;/b&gt; and the &lt;b&gt;RowKey&lt;/b&gt;. These properties together form the table's primary key and uniquely identify each entity in the table. Every entity in the Table service also has a &lt;b&gt;Timestamp&lt;/b&gt; system property, which allows the service to keep track of when an entity was last modified. This Timestamp field is intended for system use and should&lt;strong&gt; not be accessed by the application&lt;/strong&gt;. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt; Table service does not &lt;strong&gt;enforce&lt;/strong&gt; any schema for tables, which makes it possible for two entities in the same table to have different sets of properties.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;&lt;u&gt;Steps to create Windows Azure Table Storage.&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;1) Create Entity Class which is derived from TableServiceEntity.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;2) Create a DataContext class which is derived from &lt;b&gt;TableServiceContext&lt;/b&gt;, which itself derives from &lt;b&gt;DataServiceContext.&lt;/b&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;3) Create Windows Azure Table Storage from our Model ( That is our Entity Class).&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;4) Test it with Local Development Fabric.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;5) Publish to windows Azure ( Need to have account ).&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Start (Run) VS.NET as an Administrator&amp;#160; and create the&amp;#160; new Cloud service project.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q5lMe7t5I/AAAAAAAABss/JyzjaPZfIuc/s1600-h/image%5B151%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q5mUwa6ZI/AAAAAAAABs0/MOoKigwPZqc/image_thumb%5B131%5D.png?imgmax=800" width="1024" height="708" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Add ASP.NET Web Role. All Web Role needs IIS to run. so we are basically developing ASP.NET Web application .&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S6Q5m3-FX-I/AAAAAAAABs4/iu_jPbtnRSU/s1600-h/image%5B152%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6Q5oaaf0hI/AAAAAAAABs8/Oob4seFTf00/image_thumb%5B132%5D.png?imgmax=800" width="1024" height="641" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now add class Template to the project to create our Entity Schema. Which is going to be Model Structure for our Windows Azure Table Storage.&lt;/font&gt;&amp;#160;&lt;font size="4"&gt;This SreeniTodo class defines the &lt;b&gt;PartititionKey&lt;/b&gt;, &lt;b&gt;RowKey&lt;/b&gt; and &lt;b&gt;TimeStamp&lt;/b&gt; system properties required by every entity stored in a Windows Azure table&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q5o4V2YBI/AAAAAAAABtA/gVeEBrKH0lY/s1600-h/image%5B153%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q5p3heEHI/AAAAAAAABtE/SfVDzojiB9E/image_thumb%5B133%5D.png?imgmax=800" width="1024" height="489" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt; Create Data Context&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q5qonN9QI/AAAAAAAABtI/RPR556SaClQ/s1600-h/image%5B98%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6Q5r_QdoUI/AAAAAAAABtM/bfAL9cxuf9E/image_thumb%5B80%5D.png?imgmax=800" width="1028" height="646" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q5ss6l8VI/AAAAAAAABtQ/rm4qCbhkQcI/s1600-h/image%5B154%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q5tmM80SI/AAAAAAAABtY/QcdIoJjGL3s/image_thumb%5B134%5D.png?imgmax=800" width="1024" height="463" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q5uujT8XI/AAAAAAAABtc/YTAbC4Wq17s/s1600-h/image%5B155%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q5wB-RRGI/AAAAAAAABtg/4jl2t3WTQU4/image_thumb%5B135%5D.png?imgmax=800" width="983" height="768" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;b&gt;DataConnectionString:&lt;/b&gt; This is the connection string to the Window Azure account, through which we can programmatically access data storage and other functionalities in Windows Azure. This connection string can point to a Windows Azure Account in the cloud as well as local development fabric.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q5wur0HSI/AAAAAAAABtk/vg4Cmx5biJg/s1600-h/image%5B158%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6Q5xYfn4UI/AAAAAAAABto/SUyORRnfSe4/image_thumb%5B138%5D.png?imgmax=800" width="996" height="190" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Create a User interface to input the Entity&amp;#160; property filed , for sample i am getting only&amp;#160; &lt;strong&gt;Work Title&lt;/strong&gt; and &lt;strong&gt;Assigned by&lt;/strong&gt;&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q5xxMzfDI/AAAAAAAABts/W89JL-C2fE4/s1600-h/image%5B156%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q5zOwKULI/AAAAAAAABtw/n7chV5prpD0/image_thumb%5B136%5D.png?imgmax=800" width="1024" height="566" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q50CLGZfI/AAAAAAAABt0/sSSMXTaeRzs/s1600-h/image%5B157%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q51zja9TI/AAAAAAAABt4/b6LgODevoCY/image_thumb%5B137%5D.png?imgmax=800" width="1024" height="722" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Once tested in Local Environment now time to publish to Windows Azure.&lt;/font&gt; &lt;font size="4"&gt;Right click on Project and click publish. logon to your windows azure account create new service and select&amp;#160; Package and Configuration file to deploy.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now change the Azure storage settings as shown below.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;We initially ran our application to point to our local Development Storage. Now we need to point our application to Windows Azure Account.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q52dwV17I/AAAAAAAABt8/uavm3XOBauI/s1600-h/image%5B149%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q53lFpb2I/AAAAAAAABuA/gFcf98BKsWs/image_thumb%5B129%5D.png?imgmax=800" width="1028" height="648" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S6Q54SBIj-I/AAAAAAAABuE/KfewBxbPfxk/s1600-h/image%5B179%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S6Q55CrgGcI/AAAAAAAABuI/Mmye264dlSs/image_thumb%5B155%5D.png?imgmax=800" width="1028" height="723" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S6Q56md0KJI/AAAAAAAABuM/5mGGXD7fwdk/s1600-h/image%5B171%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S6Q57-l8knI/AAAAAAAABuQ/dv508TnoRKc/image_thumb%5B149%5D.png?imgmax=800" width="1028" height="677" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Next we will see how to use other window Azure Storages Blob and Q&lt;/font&gt; .&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7484103058217618392?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7484103058217618392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7484103058217618392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7484103058217618392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7484103058217618392'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/windows-azure-how-to-use-table-storage.html' title='Windows Azure – How to Use Table Storage.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S6Q5mUwa6ZI/AAAAAAAABs0/MOoKigwPZqc/s72-c/image_thumb%5B131%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1931416040218279824</id><published>2010-03-16T12:53:00.001-05:00</published><updated>2010-03-16T14:37:02.962-05:00</updated><title type='text'>My First Windows Phone 7 Application.</title><content type='html'>&lt;p&gt;First Download Windows Phone 7 Development SDK tools and install. Here is the link where you can download from Microsoft site.&lt;a title="http://silverlight.net/getstarted/devices/windows-phone/" href="http://silverlight.net/getstarted/devices/windows-phone/"&gt;http://silverlight.net/getstarted/devices/windows-phone/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once you installed SDK. Fire up the VS.NET you will see 3 type of project Templates &lt;/p&gt;  &lt;p&gt;1) Windows Phone application&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S5_FeDwkExI/AAAAAAAABr8/LMVo4qBCIsE/s1600-h/image%5B6%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S5_FfBuRDSI/AAAAAAAABsA/LDaimytcKCY/image_thumb%5B2%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;2) Windows Phone List Application&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S5_Ff9M-xxI/AAAAAAAABsE/4NDqq-y9_nk/s1600-h/image%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S5_FgolyPDI/AAAAAAAABsI/-OWdorSXqgo/image_thumb%5B3%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;and 3rd one is Class Library Application.&amp;#160; Here i am going to create simple Windows Phone Application which takes two inputs as number and add them.&lt;/p&gt;  &lt;p&gt;Here is my XAML code and UI &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S5_Fhyf4JhI/AAAAAAAABsM/PGYOJXfv3DQ/s1600-h/image%5B66%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S5_Fj018l1I/AAAAAAAABsQ/z8qIQQI3Q9A/image_thumb%5B46%5D.png?imgmax=800" width="1028" height="644" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now run the application&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S5_FkRI1ITI/AAAAAAAABsU/na2i7W3-hgU/s1600-h/image%5B54%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S5_FlAU5eJI/AAAAAAAABsY/SVbCN2-qJ1o/image_thumb%5B34%5D.png?imgmax=800" width="250" height="484" /&gt;&lt;/a&gt;&amp;#160;&amp;#160; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S5_Flv-pB2I/AAAAAAAABsc/SX8HE1yOT8c/s1600-h/image%5B39%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S5_FmCJUp-I/AAAAAAAABsg/3kskgR3_CnI/image_thumb%5B19%5D.png?imgmax=800" width="250" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S5_FmsYVpUI/AAAAAAAABsk/XSqP-vricnw/s1600-h/image%5B44%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S5_FnX6q1ZI/AAAAAAAABso/vsHlqO3ihNA/image_thumb%5B24%5D.png?imgmax=800" width="250" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I think Microsoft no need to copy Iphone here . Silverlight with Windows Phone 7&amp;#160; IPhone going to face big competition here.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1931416040218279824?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1931416040218279824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1931416040218279824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1931416040218279824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1931416040218279824'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/my-first-windows-phone-7-application.html' title='My First Windows Phone 7 Application.'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S5_FfBuRDSI/AAAAAAAABsA/LDaimytcKCY/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7650603113641595965</id><published>2010-03-14T23:24:00.001-05:00</published><updated>2010-03-14T23:24:02.291-05:00</updated><title type='text'>Developing and Hosting Application in Windows Azure</title><content type='html'>&lt;p&gt;Microsoft Announced Feb 1 2010 Azure Services pricing Model.&amp;#160; To host our application on the Cloud first we need to get Account. so go to &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.Microsoft.com/WindowsAzure"&gt;WWW.Microsoft.com/WindowsAzure&lt;/a&gt;&amp;#160; click Azure Platform Introductory Special this model offer no cost until Jun 30. click buy button and provided Billing information with CC Information.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="5"&gt;Creating Account&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S521sGKvowI/AAAAAAAABoQ/N5E1GXsvauY/s1600-h/image%5B125%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S521tQkwdpI/AAAAAAAABoU/bfYJaSIxpRM/image_thumb%5B63%5D.png?imgmax=800" width="646" height="447" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once you Create the account you get the following Conformation email&lt;/p&gt;  &lt;p&gt;Dear S.Ragavan Ramadurai, &lt;/p&gt;  &lt;p&gt;Thank you for your purchase of order 180xxxxx541. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;If your subscription has not yet been activated, follow these steps:&lt;/b&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Sign in to the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=121901&amp;amp;CLCID=0x409"&gt;Microsoft Online Services Customer Portal&lt;/a&gt; with the following Windows Live ID: someid&lt;a href="mailto:someid@hotmail.com"&gt;@hotmail.com&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;Open the &lt;b&gt;Subscriptions&lt;/b&gt; page and find your subscription. &lt;/li&gt;    &lt;li&gt;From the &lt;b&gt;Actions&lt;/b&gt; list for each subscription, select &lt;b&gt;Activate now&lt;/b&gt;, and then click &lt;b&gt;Go&lt;/b&gt;. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;This message was sent from an unmonitored e-mail address. Please do not reply to this message. &lt;/p&gt;  &lt;p&gt;Sincerely,    &lt;br /&gt;Microsoft Online Services Team &lt;/p&gt;  &lt;p&gt;To contact Microsoft Online Services Support, go to &lt;a href="http://go.microsoft.com/fwlink/?LinkId=130735&amp;amp;CLCID=0x409"&gt;online support&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Microsoft respects your privacy. Please read our online &lt;a href="http://go.microsoft.com/fwlink/?LinkID=104970&amp;amp;CLCID=0x409"&gt;Privacy Statement&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=108161&amp;amp;CLCID=0x409"&gt;Trademarks&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S521t58CDeI/AAAAAAAABoY/6ieIQhGPFN8/s1600-h/image%5B126%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S521upZFTxI/AAAAAAAABoc/x74L592PHqA/image_thumb%5B64%5D.png?imgmax=800" width="646" height="264" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="5"&gt;Download Development SDK&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Once your account is activated now download the Tools and SDK to develop the windows Azure Services.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S521vzEB-oI/AAAAAAAABog/LaZezgsD_vA/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S521wlUeJwI/AAAAAAAABok/rgHHCKxZWJQ/image_thumb%5B5%5D.png?imgmax=800" width="644" height="249" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="5"&gt;Developing and Hosting&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;Now i am going to show how to host simple ASP.NET application on Microsoft Cloud OS(Azure).&amp;#160; Microsoft provides AppFabric for&amp;#160; developing&amp;#160; Azure development&amp;#160; in Local machine once test it then move to cloud. This App Fabric installed when&amp;#160; Azure SDK installed. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S521xOuJD7I/AAAAAAAABoo/4z3duhkocyA/s1600-h/image%5B127%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S521xSfv_zI/AAAAAAAABos/UvsbGHX_WzU/image_thumb%5B65%5D.png?imgmax=800" width="240" height="140" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Fire up VS.NET 2010 RC ( you can use VS.NET 2008 SP1) and select cloud Project as shown below ( I am using C# as my development Environment )&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S521x-vhT8I/AAAAAAAABow/Me8MwD3mhy0/s1600-h/image%5B128%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S521yW1FL4I/AAAAAAAABo0/qVi4ancgQHQ/image_thumb%5B66%5D.png?imgmax=800" width="640" height="442" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Windows Azure application Must have at least one Web Role or Worker Role. here i am going to add ASP.NET Web Role. All Web Roles are user facing application but worker role only accept incoming Request no outgoing . &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S521zPxHAOI/AAAAAAAABo4/tCfvMVVqL5Y/s1600-h/image%5B129%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S521zxCO5wI/AAAAAAAABo8/GbvfYtXy69I/image_thumb%5B67%5D.png?imgmax=800" width="640" height="407" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click ok This will create two projects as shown below. &lt;/p&gt;  &lt;p&gt;The first project, named &lt;strong&gt;SreeniFirstAzureApp&lt;/strong&gt;, holds the configuration for the&amp;#160; our web role that compose the Windows Azure application. It includes the service definition file, &lt;b&gt;ServiceDefinition.csdef&lt;/b&gt;, which contains metadata needed by the Windows Azure fabric to understand the requirements of our application, such as which roles are used, their trust level, the endpoints exposed by each role, the local storage requirements and the certificates used by the roles. The service definition also establishes configuration settings specific to the application. The service configuration file, &lt;b&gt;ServiceConfiguration.cscfg&lt;/b&gt;, specifies the number of instances to run for each role and sets the value of configuration settings defined in the service definition file. This separation between service definition and configuration allows you to update the settings of a running application by uploading a new service configuration file.    &lt;br /&gt;The &lt;b&gt;Roles&lt;/b&gt; node in the cloud service project enables you to configure what roles the service includes (Web, worker or both) as well as which projects to associate with these roles. Adding and configuring roles through the Roles node will update the &lt;b&gt;ServiceDefinition.csdef&lt;/b&gt; and &lt;b&gt;ServiceConfiguration.cscfg&lt;/b&gt; files.    &lt;br /&gt;The second project, named &lt;strong&gt;SreeniWebRole&lt;/strong&gt;, is a standard ASP.NET Web Application project template modified for the Windows Azure environment. It contains an additional class that provides the entry point for the web role and contains methods to manage the initialization, starting, and stopping of the role.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S5210YY-6YI/AAAAAAAABpA/Vtz2WdaNdD8/s1600-h/image%5B130%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S5211PlmZQI/AAAAAAAABpE/3YrrC0zCvjA/image_thumb%5B68%5D.png?imgmax=800" width="419" height="480" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now open the Default.aspx and add some HTML save the file now compile and execute the app. &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S5212N7ZKlI/AAAAAAAABpI/tCbx1AHntdM/s1600-h/image%5B131%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S52120yc9HI/AAAAAAAABpM/VwkXwkoFexM/image_thumb%5B69%5D.png?imgmax=800" width="640" height="222" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now our Windows Azure application under local Development fabric.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S5214OoDDSI/AAAAAAAABpQ/8lO3cNpasX4/s1600-h/image%5B132%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S5215HF6V5I/AAAAAAAABpY/POu2N1_98fw/image_thumb%5B70%5D.png?imgmax=800" width="639" height="480" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Suppose we wanted to run 5 instance of this application just change the Instances value in ServiceConfigration file as shown below.( save the file and run the app)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S5216GeIHUI/AAAAAAAABpc/StxjmXA4DeE/s1600-h/image%5B133%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S5216Tj_TJI/AAAAAAAABpg/1t30G02yhns/image_thumb%5B71%5D.png?imgmax=800" width="640" height="130" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now local Development Fabric shows there are 5 instances will be running.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S5217ntPJ_I/AAAAAAAABpk/0uvE7O32irY/s1600-h/image%5B134%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S5218_UbmPI/AAAAAAAABpo/-8At7qawZ4c/image_thumb%5B72%5D.png?imgmax=800" width="640" height="474" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;u&gt;Publish &lt;/u&gt;&lt;/strong&gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Now we are happy with our Windows Azure application running under local environment now we are ready to publish on the cloud.&amp;#160; To publish or to host on the cloud right click on the project&amp;#160; and click publish as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S5219gPtMXI/AAAAAAAABps/j3mjO50J0zU/s1600-h/image%5B135%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S521-jSXYkI/AAAAAAAABpw/OmMKAMCWYH8/image_thumb%5B73%5D.png?imgmax=800" width="477" height="480" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;It opens up IE with Windows Azure Platform site . Now you need to Login to the site with your Windows Live id which is used when creating Azure account. Once you login click create new service.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S521_Yn0HOI/AAAAAAAABp0/pC-yt8YntQ4/s1600-h/image%5B136%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S522AJ0ia7I/AAAAAAAABp4/zvHk5bnAoD0/image_thumb%5B74%5D.png?imgmax=800" width="640" height="348" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The next screen we need to select Hosted Services.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S522A3JxADI/AAAAAAAABp8/SEI2TIM7qxQ/s1600-h/image%5B137%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522BgDvOKI/AAAAAAAABqA/xBYLxijB-6g/image_thumb%5B75%5D.png?imgmax=800" width="646" height="318" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Give service Label name and Service Description.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S522CR7BFUI/AAAAAAAABqE/5Rxp2jJcAos/s1600-h/image%5B138%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522DMu9-0I/AAAAAAAABqI/vJ65o9-IQWc/image_thumb%5B76%5D.png?imgmax=800" width="646" height="383" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I am going to host my service anywhere in the US Region. so select the region and click create.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S522D2Tr7BI/AAAAAAAABqM/GV6nifNQPy4/s1600-h/image%5B65%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522EpfHhvI/AAAAAAAABqQ/lJ9pSQbaYGM/image_thumb%5B31%5D.png?imgmax=800" width="604" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now it will shows two Environments to deploy our Windows Azure application . Click the Deploy on Staging ( First deploy in staging&amp;#160; right way to deploy&amp;#160; ).&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522FZPMf3I/AAAAAAAABqU/xyOMfvpAvgk/s1600-h/image%5B69%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S522GeWh7jI/AAAAAAAABqY/E1vXvINcXOo/image_thumb%5B33%5D.png?imgmax=800" width="644" height="454" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;when click deploy button it opens up&amp;#160; Windows File Explorer now we need to point the our application directory and select the Application Package file and Service configuration file to deploy.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522HZCokDI/AAAAAAAABqc/eHaCL5yhTgA/s1600-h/image%5B147%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S522IirwY-I/AAAAAAAABqg/_84JpkfVssc/image_thumb%5B85%5D.png?imgmax=800" width="646" height="412" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S522JE7E6_I/AAAAAAAABqk/OmQM-m6_B-8/s1600-h/image%5B148%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S522Jzqcp6I/AAAAAAAABqo/f0JohlkIjX4/image_thumb%5B86%5D.png?imgmax=800" width="646" height="429" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now click to deploy.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522KnCvzyI/AAAAAAAABqs/l2mPq8Qcj-M/s1600-h/image%5B146%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522LLDNp0I/AAAAAAAABqw/EIaj_HVuhr4/image_thumb%5B84%5D.png?imgmax=800" width="646" height="394" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522L-P-fSI/AAAAAAAABq0/sgTD8pS4vwc/s1600-h/image%5B145%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522MtcneRI/AAAAAAAABq4/zUR5G66mEyU/image_thumb%5B83%5D.png?imgmax=800" width="640" height="472" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now our application is deployed and hosted in Windows Azure OS. now we need to start the app just clicking Run button.&lt;/p&gt;  &lt;p&gt;Now you will see Initializing…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S522NfpNtBI/AAAAAAAABq8/oUpsr0kcqhU/s1600-h/image%5B139%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522OP4RfII/AAAAAAAABrA/Df9SzS7Dr9g/image_thumb%5B77%5D.png?imgmax=800" width="646" height="419" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now it says Busy&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S522OtLAdZI/AAAAAAAABrE/87IHUEmK0B0/s1600-h/image%5B140%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522PkVj47I/AAAAAAAABrI/m9XklbznhIA/image_thumb%5B78%5D.png?imgmax=800" width="646" height="401" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now Application is ready to run.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S522QXNS-QI/AAAAAAAABrM/bhqQQNFGyF0/s1600-h/image%5B142%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S522RHL7Z1I/AAAAAAAABrQ/G4R4rMeFAIs/image_thumb%5B80%5D.png?imgmax=800" width="646" height="406" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The following screen shot shows my Application running successfully on Staging Environment . when application in staging you get the application URL as some GUID.&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S522Rs15hDI/AAAAAAAABrU/VwLbYRUB_0g/s1600-h/image%5B104%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S522Ss3xypI/AAAAAAAABrY/tTBiuy9bdwU/image_thumb%5B52%5D.png?imgmax=800" width="644" height="197" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now i am going to promote my Application to Production just click the following Icon.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="5"&gt;Promote from Staging to Production&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522SyFuAuI/AAAAAAAABrc/JJY7xthOoMs/s1600-h/image%5B144%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S522TluabmI/AAAAAAAABrg/uHomDaLQgwc/image_thumb%5B82%5D.png?imgmax=800" width="646" height="249" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S522UM3HiuI/AAAAAAAABrk/04C9-xCKGPg/s1600-h/image%5B116%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S522U_b3FPI/AAAAAAAABro/jTq3JmfytIc/image_thumb%5B58%5D.png?imgmax=800" width="644" height="228" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now my application promoted from Staging to Production. Now the application URL will be &lt;/p&gt;  &lt;p&gt;&lt;a href="http://sreeniramadurai.cloudapp.net/"&gt;http://sreeniramadurai.cloudapp.net/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S522VjIim4I/AAAAAAAABrs/zK3T5h2VNo8/s1600-h/image%5B143%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S522WposNrI/AAAAAAAABrw/esDde7vxTQ0/image_thumb%5B81%5D.png?imgmax=800" width="646" height="418" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Application runs successfully in production as well.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S522Xm0_ioI/AAAAAAAABr0/c8EthPtNkYw/s1600-h/image%5B124%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S522YXHAYFI/AAAAAAAABr4/a9VbNfDqTaI/image_thumb%5B62%5D.png?imgmax=800" width="644" height="234" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7650603113641595965?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7650603113641595965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7650603113641595965' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7650603113641595965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7650603113641595965'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/developing-and-hosting-application-in.html' title='Developing and Hosting Application in Windows Azure'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S521tQkwdpI/AAAAAAAABoU/bfYJaSIxpRM/s72-c/image_thumb%5B63%5D.png?imgmax=800' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1771180993569581896</id><published>2010-03-09T20:27:00.001-06:00</published><updated>2010-03-09T20:27:41.816-06:00</updated><title type='text'>.NET 4.0  Tuple&lt;T&gt;</title><content type='html'>&lt;p&gt;In .NET 4.0 there is a new feature called&amp;#160; Tuple. First let us see the definition for Tuple .&lt;/p&gt;  &lt;p&gt;&lt;font size="5"&gt;&lt;strong&gt;What is Tuple?&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;In &lt;a href="http://en.wikipedia.org/wiki/Mathematics"&gt;mathematics&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Computer_science"&gt;computer science&lt;/a&gt; a &lt;b&gt;tuple&lt;/b&gt; represents the notion of an ordered list of elements. In &lt;a href="http://en.wikipedia.org/wiki/Set_theory"&gt;set theory&lt;/a&gt;, an &lt;b&gt;(ordered) &lt;var&gt;n&lt;/var&gt;-tuple&lt;/b&gt; is a &lt;a href="http://en.wikipedia.org/wiki/Sequence"&gt;sequence&lt;/a&gt; (or ordered list) of &lt;var&gt;n&lt;/var&gt; elements, where &lt;var&gt;n&lt;/var&gt; is a positive integer.&lt;strong&gt; [Source Wikipedia]&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Tuple is a factory class that provides static methods for creating instances of the tuple types supported by the .NET Framework. It provides helper methods that can be called to instantiate particular tuple objects without requiring that you explicitly specify the type of each tuple component.&lt;/p&gt;  &lt;p&gt;Let’s take a look at the following&amp;#160; simple math example.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S5cDmQD3zJI/AAAAAAAABoI/BkB4EYCCJF8/s1600-h/image%5B5%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S5cDnayFmcI/AAAAAAAABoM/ZGRp-SHQGbA/image_thumb%5B3%5D.png?imgmax=800" width="978" height="475" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In the above&amp;#160; example i have created a method which returns a Tuple and&amp;#160; which has three Integer values. So using Tuple a method can returns multiple values&amp;#160; without using &lt;strong&gt;out&lt;/strong&gt; parameters. &lt;/p&gt;  &lt;p&gt;To access values in aTuple we use &lt;strong&gt;ItemN&lt;/strong&gt; where N is the nth position in a Tuple. In the above example&amp;#160; I am&amp;#160; accessing the&amp;#160; Item1 value that returns me&amp;#160; the first value of &lt;strong&gt; num1+num2+num3 from Tuple&lt;/strong&gt;. like that we can access Tuple values .&lt;/p&gt;  &lt;p&gt;Tuple is not new concept the language like &lt;strong&gt;Python&lt;/strong&gt; and &lt;strong&gt;Haskell&lt;/strong&gt; has this feature as well.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1771180993569581896?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1771180993569581896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1771180993569581896' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1771180993569581896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1771180993569581896'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/net-40-tuple.html' title='.NET 4.0  Tuple&amp;lt;T&amp;gt;'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S5cDnayFmcI/AAAAAAAABoM/ZGRp-SHQGbA/s72-c/image_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1900761654204773832</id><published>2010-03-02T16:23:00.001-06:00</published><updated>2010-03-02T16:23:56.837-06:00</updated><title type='text'>WF 4.0 Creating Custom AsyncCodeActivity</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;In WF 4.0 all the activities&amp;#160; are derived from Base activity called&amp;#160; &lt;strong&gt;Activity&lt;/strong&gt; . In this blog post i am going to create custom AsyncCodeActivity. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;AsyncCodeActivity&lt;/strong&gt; and &lt;strong&gt;AsyncCodeActivity&amp;lt;T&amp;gt;&lt;/strong&gt; are very similar to the &lt;strong&gt;CodeActivity. But AsyncCodeActivity execute Asynchronously and &lt;/strong&gt; perform long running operations. suppose if you wanted to perform I/O or downloading any content from Web, you should create activity which drives from the &lt;font size="4"&gt;&lt;strong&gt;AsyncCodeActivity or NativeActivity.&lt;/strong&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S42P52g7-XI/AAAAAAAABng/t9S8BTo2oag/s1600-h/image9.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S42P6cS-hzI/AAAAAAAABnk/ZuoiRIfAgpQ/image_thumb7.png?imgmax=800" width="375" height="298" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Here i am going to build Custom AsyncCodeActivity to retrieve HTML content for the given URL . &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;C# implementation of Custom AsyncCodeActivity&amp;#160; Source Lines.&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S42P7Cv2TCI/AAAAAAAABno/8X8Aic_8MNA/s1600-h/image%5B35%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S42P8KN4e1I/AAAAAAAABns/5xCpe77IsME/image_thumb%5B26%5D.png?imgmax=800" width="757" height="521" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;To Add Custom Activity Designer to this Activity please refer &lt;a title="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html" href="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html"&gt;http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html&lt;/a&gt;. Now we need to test it.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Here I have a List of Web URLs which i need to download&amp;#160; the content (HTML) and save into a&amp;#160; file . To loop through the all URL collections and pass&amp;#160; into custom activity I am going use&amp;#160; ParallelForEach&amp;lt;T&amp;gt; Activity.&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S42P8uUZfWI/AAAAAAAABnw/na3OFqJe18I/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S42P9bsCEOI/AAAAAAAABn0/4HQp6FelJow/image_thumb%5B33%5D.png?imgmax=800" width="904" height="367" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Now Build the WF as Shown Below and Test it.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S42P9uEQJTI/AAAAAAAABn4/ae0Q-zKmtSA/s1600-h/image%5B10%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S42P94sDdfI/AAAAAAAABn8/kB4jO-sZVKg/image_thumb%5B5%5D.png?imgmax=800" width="368" height="486" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S42P-sQMeSI/AAAAAAAABoA/OgJjC-7LPqo/s1600-h/image%5B26%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S42P_I3RmVI/AAAAAAAABoE/STVTlZWAAtg/image_thumb%5B17%5D.png?imgmax=800" width="644" height="327" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1900761654204773832?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1900761654204773832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1900761654204773832' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1900761654204773832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1900761654204773832'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/03/wf-40-creating-custom-asynccodeactivity.html' title='WF 4.0 Creating Custom AsyncCodeActivity'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S42P6cS-hzI/AAAAAAAABnk/ZuoiRIfAgpQ/s72-c/image_thumb7.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-1698740096444797371</id><published>2010-02-28T02:17:00.001-06:00</published><updated>2010-02-28T02:17:14.401-06:00</updated><title type='text'>Changing Default ICON in Custom Activity Designer in WF 4.0</title><content type='html'>&lt;p&gt;In WF 4.0 when we create Custom Activity Designer it always shows the following Default ICON . In this post i am going to show how to&amp;#160; change the Default ICON to custom one.&amp;#160; Here i am using&amp;#160; the custom activity the&amp;#160; GetAllFiles&amp;#160; which i created in my pervious blog.[&lt;a title="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html" href="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html"&gt;http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html&lt;/a&gt;]&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4omeIaTsKI/AAAAAAAABm4/hdJWbgK7wQU/s1600-h/image%5B10%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S4omeu75rYI/AAAAAAAABm8/4G7owGt8StE/image_thumb%5B6%5D.png?imgmax=800" width="358" height="180" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here is the XAML code which changes default ICON to Custom ICON.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S4omfHoKg9I/AAAAAAAABnA/oKOseM4ny7I/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S4omfuDy8pI/AAAAAAAABnE/5-KwVB7VjQE/image_thumb%5B9%5D.png?imgmax=800" width="646" height="294" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;WF 4.0 Activity Designer provides the following Controls &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S4omf0QPGfI/AAAAAAAABnI/5H_N8mAii68/s1600-h/image%5B36%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S4omgcFgIWI/AAAAAAAABnM/PfAGWXT7V28/image_thumb%5B22%5D.png?imgmax=800" width="413" height="260" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4omg2FIRNI/AAAAAAAABnQ/XAu0mpgPM78/s1600-h/image%5B24%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4omhsQAVzI/AAAAAAAABnU/su3ay_ccGM4/image_thumb%5B14%5D.png?imgmax=800" width="417" height="774" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;After doing all the above work now just compile the project you will see the Custom Activity ICON changed as Shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4omh7wof7I/AAAAAAAABnY/WigPmL76ATg/s1600-h/image%5B30%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S4omiZ5_kTI/AAAAAAAABnc/uVC4ImflIYI/image_thumb%5B18%5D.png?imgmax=800" width="429" height="214" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan,&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-1698740096444797371?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/1698740096444797371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=1698740096444797371' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1698740096444797371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/1698740096444797371'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/changing-default-icon-in-custom.html' title='Changing Default ICON in Custom Activity Designer in WF 4.0'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S4omeu75rYI/AAAAAAAABm8/4G7owGt8StE/s72-c/image_thumb%5B6%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-3705640293626682124</id><published>2010-02-27T23:58:00.001-06:00</published><updated>2010-02-27T23:58:48.547-06:00</updated><title type='text'>WF 4.0 Custom Activity Designer</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;In this blog post i am going to build Custom Activity Designer for the Custom Activity which I created in my previous blog post.&amp;#160; [&lt;/font&gt;&lt;/strong&gt;&lt;a title="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html" href="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html"&gt;&lt;strong&gt;&lt;font size="3"&gt;http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;font size="3"&gt;].&amp;#160; &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;&lt;u&gt;Activity Designer:&lt;/u&gt; &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;The WF 4.0 Activity Designer is based on WPF ( Windows Presentation Foundation) which means we have all the power of WPFs which is &lt;u&gt;Rich UI , Styling, Data binding,Triggers etc.,&lt;/u&gt; for our Custom Activity. In addition to this WF also provides some user controls that you can use in your Activity Designer to simplify the task of displaying an individual child activity, or a collection of activities. &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt; The four primary controls are: &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;li&gt;&lt;strong&gt;&lt;font size="3"&gt;ActivityDesigner – root WPF control used in activity designers &lt;/font&gt;&lt;/strong&gt;&lt;/li&gt;  &lt;li&gt;&lt;strong&gt;&lt;font size="3"&gt;WorkflowItemPresenter – used to display a single Activity &lt;/font&gt;&lt;/strong&gt;&lt;/li&gt;  &lt;li&gt;&lt;strong&gt;&lt;font size="3"&gt;WorkflowItemsPresenter – used to display a collection of child Activities &lt;/font&gt;&lt;/strong&gt;&lt;/li&gt;  &lt;li&gt;&lt;strong&gt;&lt;font size="3"&gt;ExpressionTextBox – used to enable in place editing of expressions such as arguments.&lt;/font&gt;&lt;/strong&gt;&lt;/li&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Now we are going to add new Item&amp;#160; template called [Activity Designer] to our Custom Activity project&amp;#160; as shown below.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S4oF-prCXEI/AAAAAAAABl4/FsF-wXWadZ0/s1600-h/image%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S4oF_NpA1FI/AAAAAAAABl8/crAp1p-CHr4/image_thumb%5B11%5D.png?imgmax=800" width="646" height="448" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;After adding Activity Designer template we need to Create User Interface in XAML .&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4oF_xNcdxI/AAAAAAAABmA/cX1xa8QI_Ro/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4oGAyvHC_I/AAAAAAAABmE/OIjd6ZnJJDQ/image_thumb%5B24%5D.png?imgmax=800" width="646" height="368" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Here i am using ActivityDesigner item template to create a UI for custom activity because i have only one Activity in my project. Suppose if you have more number of custom activities you can use WF4 &lt;u&gt;ActivityDesignerLibrary &lt;/u&gt;project template.&amp;#160; Once we have added the Designer ,now we are ready to&amp;#160; customize the look and feel of out custom activity by laying out how to display data and visual representations of child activities.&amp;#160; Within the designer you have access to a&lt;/strong&gt; &lt;strong&gt;&lt;u&gt;ModelItem&lt;/u&gt;&lt;/strong&gt; &lt;strong&gt;that is an abstraction over the actual activity, and surfacing all properties of the activity.&lt;/strong&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Once we build the UI now we need to attach designer to our Custom Activity class as shown below.&lt;/font&gt;&lt;/strong&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S4oGBjf0c8I/AAAAAAAABmI/ovSEYHvJQ58/s1600-h/image%5B38%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4oGCO-SBSI/AAAAAAAABmM/RuC12XnYC-0/image_thumb%5B30%5D.png?imgmax=800" width="646" height="265" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Now add Custom Activity project as a Reference in Main [hosting] Workflow project &amp;amp; Compile the Custom Activity project. Now this custom activity will appear in Toolbox. now Drag and drop and set the properties for the custom activity.&lt;/strong&gt;&lt;/font&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S4oGCVMkciI/AAAAAAAABmQ/l2GE1mN5m7M/s1600-h/image%5B56%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4oGC2Mz7pI/AAAAAAAABmU/vqt6FB7nD_8/image_thumb%5B46%5D.png?imgmax=800" width="381" height="486" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Since this custom activity returns the List of File names from the given input Directory to store the output result we need to create Workflow variable then to loop through the List of File names&amp;#160; add&lt;/strong&gt; &lt;strong&gt;&lt;u&gt;ForEach&amp;lt;String&amp;gt;&lt;/u&gt; activity and print the file name using &lt;u&gt;WriteLine&lt;/u&gt; Activity.&lt;/strong&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S4oGDK906sI/AAAAAAAABmY/akFj1MLWbiY/s1600-h/image%5B79%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGDZT6DII/AAAAAAAABmc/39SpqYtHyMc/image_thumb%5B67%5D.png?imgmax=800" width="1030" height="74" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGDkBpWDI/AAAAAAAABmg/15h83RKEa6I/s1600-h/image%5B89%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGEEqfXPI/AAAAAAAABmk/A2tuiX2hpQQ/image_thumb%5B75%5D.png?imgmax=800" width="383" height="198" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGEVV2a7I/AAAAAAAABmo/fNpNOMZGYmU/s1600-h/image%5B73%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S4oGE1MWdDI/AAAAAAAABms/qtrXnOh9gls/image_thumb%5B63%5D.png?imgmax=800" width="379" height="486" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Now Hit F5 and Run the Main Work Flow project. you will see the Files listed form the given directory as shown below.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGFBbnepI/AAAAAAAABmw/zNSxDecLQoU/s1600-h/image%5B93%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S4oGF8eMSWI/AAAAAAAABm0/iWBaBdyWuj0/image_thumb%5B77%5D.png?imgmax=800" width="607" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;For More Info Please Refer the following URI: &lt;a title="http://msdn.microsoft.com/en-us/library/ee342461.aspx" href="http://msdn.microsoft.com/en-us/library/ee342461.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee342461.aspx&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-3705640293626682124?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/3705640293626682124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=3705640293626682124' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3705640293626682124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/3705640293626682124'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-activity-designer.html' title='WF 4.0 Custom Activity Designer'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_SDxNQGpww6E/S4oF_NpA1FI/AAAAAAAABl8/crAp1p-CHr4/s72-c/image_thumb%5B11%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-7031469476885363797</id><published>2010-02-27T17:47:00.001-06:00</published><updated>2010-02-27T17:47:47.900-06:00</updated><title type='text'>WF 4.0 Custom Code Activity using CodeActivity&lt;T&gt;</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;In this blog post we are going to use CodeActivity&amp;lt;T&amp;gt; Generic class to create custom code activity. Instead of defining a workflow OutArgument to get output from workflow&amp;#160; we are going&amp;#160; to change Execute method return type as shown below. [ To Follow this post please Read &lt;/font&gt;&lt;/strong&gt;&lt;a title="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html" href="http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html"&gt;&lt;strong&gt;&lt;font size="3"&gt;http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;font size="3"&gt; first.]&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S4mvGiGny4I/AAAAAAAABlo/2tNAyvuwSQw/s1600-h/image%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4mvHIKHO9I/AAAAAAAABls/BBrPh8XSjfI/image_thumb%5B2%5D.png?imgmax=800" width="646" height="254" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;When we get output from workflow we will use&amp;#160; [Result] is the key as shown below.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S4mvH3FICvI/AAAAAAAABlw/5zwEa-pSnFU/s1600-h/image%5B8%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4mvItT5FyI/AAAAAAAABl0/oGwCzY0D3eA/image_thumb%5B4%5D.png?imgmax=800" width="644" height="360" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-7031469476885363797?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/7031469476885363797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=7031469476885363797' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7031469476885363797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/7031469476885363797'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-using.html' title='WF 4.0 Custom Code Activity using CodeActivity&amp;lt;T&amp;gt;'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S4mvHIKHO9I/AAAAAAAABls/BBrPh8XSjfI/s72-c/image_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-2410937590939754605</id><published>2010-02-27T17:16:00.001-06:00</published><updated>2010-02-27T17:16:07.296-06:00</updated><title type='text'>WF 4.0 Custom Code Activity [VS.NET 2010 RC].</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Windows Workflow Foundation 4.0 is completely re-write of the WF 3.0 which is initially Introduced. Activities are building blocks of Workflow. In this post we are going to see how to create custom activity in WF 4.0 with VS.NET 2010.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;All Custom Code Activities are derived from System.Activities.CodeActivity or System.Activities.CodeActivity &amp;lt;T&amp;gt;.&amp;#160; This type of activities should not perform long running process and there is no way cancel.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Now we are going to write simple custom Code activity without using Workflow project Template.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S4mnno_zOlI/AAAAAAAABk4/beIIDXlEWfw/s1600-h/image%5B14%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4mnoRYaXqI/AAAAAAAABk8/_zGGeU5sV5c/image_thumb%5B12%5D.png?imgmax=800" width="644" height="446" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S4mnogT5CYI/AAAAAAAABlA/Qbq7DAlE7iU/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S4mnpkhShaI/AAAAAAAABlE/WBs2SU0PLC0/image_thumb%5B24%5D.png?imgmax=800" width="589" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Now we are going to create a custom activity called GetAllFile. This activity basically takes Directory as input and returns List of String as Files from it.&amp;#160; &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;First we need to drive a class from CodeActivity and override the Execute method as shown below. Here we are going to use InArgument for passing input to the workflow and OutArgument to get output from the workflow.&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S4mnqWAQazI/AAAAAAAABlM/rOsI8UpyvKg/s1600-h/image%5B34%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4mnrD-Tg_I/AAAAAAAABlQ/Q40W5xGm1m8/image_thumb%5B28%5D.png?imgmax=800" width="742" height="379" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;&lt;strong&gt;Now we need to invoke the above activity .&amp;#160; Here we are going to use WorkflowInvoker class. The advantage of using WorkflowInvoker is easy to call or invoke workflow and its easy to write unit test.&lt;/strong&gt;&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;font color="#0000ff" size="4" face="Tw Cen MT"&gt;&lt;strong&gt;[Note: Most of the workflow hosting environments uses &lt;em&gt;WorkflowApplication&lt;/em&gt; class].&lt;/strong&gt;&lt;/font&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4mnr0uNRVI/AAAAAAAABlU/aG13p1mJyEQ/s1600-h/image%5B42%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S4mnsvuJR8I/AAAAAAAABlY/xV0kBzxuFDc/image_thumb%5B34%5D.png?imgmax=800" width="748" height="393" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="4"&gt;Result or Output:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S4mns9E104I/AAAAAAAABlc/jEiJcJp2pEc/s1600-h/image%5B46%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S4mntgrzq1I/AAAAAAAABlg/vWjxlTG1NvA/image_thumb%5B36%5D.png?imgmax=800" width="644" height="464" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-2410937590939754605?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/2410937590939754605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=2410937590939754605' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2410937590939754605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/2410937590939754605'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/wf-40-custom-code-activity-vsnet-2010.html' title='WF 4.0 Custom Code Activity [VS.NET 2010 RC].'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_SDxNQGpww6E/S4mnoRYaXqI/AAAAAAAABk8/_zGGeU5sV5c/s72-c/image_thumb%5B12%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-892553638962890721</id><published>2010-02-15T14:57:00.001-06:00</published><updated>2010-02-15T14:57:14.543-06:00</updated><title type='text'>Windows Phone 7 Series</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Today at Mobile World Congress 2010, Microsoft CEO Steve Ballmer introduced the next generation of Windows Phones, Windows Phone 7 Series.&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;font color="#0000ff" size="5"&gt;&lt;strong&gt;MS Says Windows Phones are designed for life in motion, so you don’t miss a moment.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="5"&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S3m1JzijEQI/AAAAAAAABkU/VsZbIKiBmGM/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S3m1KV5BpQI/AAAAAAAABkY/GB3ODjxf1K0/image_thumb%5B1%5D.png?imgmax=800" width="644" height="128" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;For more visit&amp;#160; &lt;/font&gt;&lt;a title="http://www.microsoft.com/presspass/presskits/windowsphone/default.aspx" href="http://www.microsoft.com/presspass/presskits/windowsphone/default.aspx"&gt;&lt;font size="4"&gt;http://www.microsoft.com/presspass/presskits/windowsphone/default.aspx&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Nandri(Thanks)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Sreenivasaragavan&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-892553638962890721?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/892553638962890721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=892553638962890721' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/892553638962890721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/892553638962890721'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/windows-phone-7-series.html' title='Windows Phone 7 Series'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_SDxNQGpww6E/S3m1KV5BpQI/AAAAAAAABkY/GB3ODjxf1K0/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-8787757833455490301</id><published>2010-02-13T16:06:00.001-06:00</published><updated>2010-02-13T16:06:06.648-06:00</updated><title type='text'>VS.NET IDE TODO Comments [Helps to Centralize the Task Lists]</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;I am not sure how many of you knew already about this nice feature. But i came across today only after Installing&amp;#160; VS.NET 2010 RC. Its also there in all pervious version of VS.NET IDE ( 2003, 2005, 2008). I am too late to know about this. :)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_SDxNQGpww6E/S3ciO3Eh__I/AAAAAAAABjs/WZBNzclpe4Q/s1600-h/image40.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S3ciPSKp3-I/AAAAAAAABjw/LMXsOvf1yzg/image_thumb26.png?imgmax=800" width="174" height="171" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Suppose when we are working in a project we may have many tasks to remember while coding , we may use PAD or some other media to keep track of these tasks. But this tasks list are separated from our IDE. Using VS.NET TODO Comments we can track them in VS.NET IDE itself. This Comments help you to get more organized about your projects to-do items in a central place.&amp;#160;&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;let me show you how we can use TODO comments in our C# programs.&amp;#160; Here i am putting TODO comments with some notes. like that in a big project we may have lot of TODO list.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_SDxNQGpww6E/S3ciQFFKhrI/AAAAAAAABj0/SUJf8rUoq_o/s1600-h/image22.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_SDxNQGpww6E/S3ciQ4KUikI/AAAAAAAABj4/FmrVMKLAX30/image_thumb14.png?imgmax=800" width="528" height="486" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Look at the above code snippet we have some flexibility on&amp;#160; &lt;strong&gt;TODO&lt;/strong&gt; comments&amp;#160; we can write&amp;#160; &lt;strong&gt;Todo&lt;/strong&gt; or &lt;strong&gt;todo&lt;/strong&gt; . &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;To open or to List the the TODO list, go to View menu -&amp;gt; Task List as shown below.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S3ciRWVgpwI/AAAAAAAABj8/FLAEduH39cs/s1600-h/image12.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_SDxNQGpww6E/S3ciSJJkrjI/AAAAAAAABkA/9d2yqwizY4o/image_thumb8.png?imgmax=800" width="324" height="489" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_SDxNQGpww6E/S3ciSkthbYI/AAAAAAAABkE/Ltq8AuUJwt0/s1600-h/image28.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_SDxNQGpww6E/S3ciS_vvPXI/AAAAAAAABkI/utxZXIddX-g/image_thumb18.png?imgmax=800" width="646" height="95" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;Even we can use&amp;#160; &lt;strong&gt;HACK&lt;/strong&gt; and &lt;strong&gt;UNDONE&lt;/strong&gt; Comments as well for the same. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;for more information&amp;#160; visit &lt;/font&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/zce12xx2.aspx" href="http://msdn.microsoft.com/en-us/library/zce12xx2.aspx"&gt;&lt;font size="4"&gt;http://msdn.microsoft.com/en-us/library/zce12xx2.aspx&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font size="6"&gt;User Tasks&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SDxNQGpww6E/S3ciTKEJU-I/AAAAAAAABkM/kam_-czobzw/s1600-h/image32.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_SDxNQGpww6E/S3ciTj3LknI/AAAAAAAABkQ/ux9pxEZ79mo/image_thumb20.png?imgmax=800" width="644" height="183" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;User tasks this allows us to add Task directly to the task list.&lt;/p&gt;  &lt;p&gt;Nandri(Thanks)&lt;/p&gt;  &lt;p&gt;SreenivasaRagavan.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2736933194933501699-8787757833455490301?l=mstecharchitect.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mstecharchitect.blogspot.com/feeds/8787757833455490301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2736933194933501699&amp;postID=8787757833455490301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8787757833455490301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2736933194933501699/posts/default/8787757833455490301'/><link rel='alternate' type='text/html' href='http://mstecharchitect.blogspot.com/2010/02/vsnet-ide-todo-comments-helps-to.html' title='VS.NET IDE TODO Comments [Helps to Centralize the Task Lists]'/><author><name>Sreeni.NET</name><uri>http://www.blogger.com/profile/11674230937434448616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='10' src='http://1.bp.blogspot.com/_SDxNQGpww6E/SmLECCCkKSI/AAAAAAAAA1E/-w2qDpNjdzk/S220/c1f1c85fdf21_NetFrameworkNewLogo_thumb_3FD025F5.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SDxNQGpww6E/S3ciPSKp3-I/AAAAAAAABjw/LMXsOvf1yzg/s72-c/image_thumb26.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2736933194933501699.post-5821608078587794563</id><published>2010-02-12T23:30:00.001-06:00</published><updated>2010-02-12T23:34:58.401-06:00</updated><title type='text'>How to add Custom Event Handler for UDTs (User Defined Types)</title><content type='html'>&lt;p&gt;&lt;font size="4"&gt;Today one of my friend asked me how to add custom events to our custom class.With simple example i explained to him then&amp;#160; I thought i can blog his question and Answer. Here is the example i used &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt; Suppose let say we have UDT Called&amp;#160; Contact with the following properties Name, Phone , Email, and Address. suppose we want to notified if some one changes Contact Phone number property . &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="4"&gt;First let us define UDT as C# Class.&lt;/font&gt;&lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="code"&gt;&lt;span style="color: blue"&gt;public class &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Contact&lt;br /&gt;    &lt;/span&gt;{&lt;br /&gt;        &lt;span style="color: blue"&gt;private string &lt;/span&gt;phone = &lt;span style="color: blue"&gt;string&lt;/span&gt;.Empty;&lt;br /&gt;        &lt;span style="color: blue"&gt;public string &lt;/span&gt;FirstName { &lt;span style="color: blue"&gt;get&lt;/span&gt;; &lt;span style="color: blue"&gt;set&lt;/span&gt;; }&lt;br /&gt;        &lt;span style="color: blue"&gt;public string &lt;/span&gt;LastName { &lt;span style="color: blue"&gt;get&lt;/span&gt;; &lt;span style="color: blue"&gt;set&lt;/span&gt;; }&lt;br /&gt;        &lt;span style="color: blue"&gt;public string &lt;/span&gt;Address { &lt;span style="color: blue"&gt;get&lt;/span&gt;; &lt;span style="color: blue"&gt;set&lt;/span&gt;; }&lt;br /&gt;&lt;br /&gt;        &lt;span style="color: green"&gt;// Define the event for Phone number change.&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: blue"&gt;public event &lt;/span&gt;&lt;span style="color: #2b91af"&gt;EventHandler &lt;/span&gt;PhoneChanged;&lt;br /&gt;        &lt;span style="color: blue"&gt;public string &lt;/span&gt;Phone &lt;br /&gt;        { &lt;br /&gt;            &lt;span style="color: blue"&gt;get&lt;br /&gt;            &lt;/span&gt;{&lt;br /&gt;                &lt;span style="color: blue"&gt;return &lt;/span&gt;phone;&lt;br /&gt;            }&lt;br /&gt;            &lt;span style="color: blue"&gt;set&lt;br /&gt;            &lt;/span&gt;{&lt;br /&gt;                &lt;span style="color: blue"&gt;this&lt;/span&gt;.phone = &lt;span style="color: blue"&gt;value&lt;/span&gt;;&lt;br /&gt;                &lt;span style="color: blue"&gt;if &lt;/span&gt;(&lt;span style="color: blue"&gt;this&lt;/span&gt;.PhoneChanged != &lt;span style="color: blue"&gt;null&lt;/span&gt;) &lt;span style="color: green"&gt;//Check to see event is not null&lt;br /&gt;                    &lt;/span&gt;&lt;span style="color: blue"&gt;this&lt;/span&gt;.PhoneChanged(&lt;span style="color: blue"&gt;this &lt;/span&gt;, &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt;());&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;       &lt;br /&gt;    }&lt;/pre&gt;&lt;br /&gt;  &lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="4"&gt;Now let see how we can invoke this event from code.&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;namespace &lt;/span&gt;ConsoleApplication6&lt;br /&gt;{&lt;br /&gt;    &lt;span style="color: blue"&gt;class &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Program&lt;br /&gt;    &lt;/span&gt;{&lt;br /&gt;        &lt;span style="color: blue"&gt;static void &lt;/span&gt;Main(&lt;span style="color: blue"&gt;string&lt;/span&gt;[] args)&lt;br /&gt;        {&lt;br /&gt;  
