<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Bluegenegeek Blog Feed</title><description /><category>2012</category><category>General</category><category>ASP.NET</category><category>release</category><category>Telerik</category><category>Sitefinity</category><category>disqus</category><category>eCommerce</category><category>RIP Steve</category><category>apple</category><category>code</category><category>test code</category><category>Fun</category><category>code snippet</category><category>OpenAccess Orm</category><category>Telerik mvc music store</category><category>FetchStrategy</category><category>AmbiguousControllers</category><category>MVC</category><category>IE9</category><category>Tortoise hg</category><category>Mercurial</category><category>Version Control</category><category>Nuget</category><category>Telerik Extensions</category><category>Editor</category><category>New Years</category><category>2011</category><category>Year Review</category><category>Grid</category><category>Getting Started</category><category>Windows Phone 7</category><category>snippet</category><category>Hello world</category><category>CRUD</category><category>C#</category><category>LINQ</category><category>twitter</category><category>JQuery</category><category>tinymce</category><category>Shrink Database</category><category>SQL</category><category>MVC2</category><category>charting</category><category>asp.net</category><category>ftp</category><category>Script</category><category>BYOB</category><category>2010</category><category>Update Script</category><category>Elmah</category><category>OpenSource</category><category>Java Script</category><category>Windows 7</category><category>Intro</category><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Bluegenegeek" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="bluegenegeek" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">342e90cb-e77e-46c9-94dc-4dc2efc1d038</guid><link>http://www.bluegenegeek.com/blog/2012/01/01/happy-new-year-2012</link><a10:author><a10:name> </a10:name></a10:author><category>2012</category><category>General</category><title>Happy New Year 2012</title><description>&lt;p&gt;Happy New Year 2012 to the readers of my blog &lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/bluegenegeek/newyear2012.jpg?sfvrsn=0" title="newyear2012" /&gt;&lt;/p&gt; &lt;p&gt;Image courtesy of &lt;a href="http://media.treehugger.com"&gt;http://media.treehugger.com&lt;/a&gt;&lt;/p&gt;</description><pubDate>Sun, 01 Jan 2012 22:36:54 Z</pubDate></item><item><guid isPermaLink="false">e1a05321-87ae-4468-ba51-a5d85a25bc3e</guid><link>http://www.bluegenegeek.com/blog/2011/12/31/new-test-post</link><a10:author><a10:name> </a10:name></a10:author><category>ASP.NET</category><title>New Test Post</title><description>&lt;p&gt;This is a new test post for Live writer detection&lt;/p&gt;</description><pubDate>Sat, 31 Dec 2011 21:40:52 Z</pubDate></item><item><guid isPermaLink="false">541515f1-4a77-4325-af4d-182319bf8440</guid><link>http://www.bluegenegeek.com/blog/2011/12/20/sitefinity-4.4-released!</link><a10:author><a10:name> </a10:name></a10:author><category>release</category><category>Telerik</category><category>Sitefinity</category><title>Sitefinity 4.4 released!</title><description>&lt;p&gt;Sitefinity 4.4 has been released today. I am really excited about Module Builder. The release also introduces product variations for the Ecommerce module and a ton of bug fixes.&lt;/p&gt; &lt;p&gt;Check it out at&amp;nbsp;&lt;a href="http://www.sitefinity.com/devnet/forums/sitefinity-4-x/general-discussions/sitefinity-4-4-released.aspx"&gt;http://www.sitefinity.com/devnet/forums/sitefinity-4-x/general-discussions/sitefinity-4-4-released.aspx&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Tue, 20 Dec 2011 19:49:39 Z</pubDate></item><item><guid isPermaLink="false">6886b51e-c437-4bd2-96d4-1a9b1967be11</guid><link>http://www.bluegenegeek.com/blog/2011/11/11/using-disqus-comments-in-sitefinity</link><a10:author><a10:name> </a10:name></a10:author><category>disqus</category><category>Telerik</category><category>Sitefinity</category><title>Using Disqus comments in Sitefinity</title><description>&lt;p&gt;In my &lt;a href="http://www.bluegenegeek.com/blog/2011/11/06/developing-with-disqus-on-localhost"&gt;previous post&lt;/a&gt; I explained how to use Disqus in a development environment.&lt;/p&gt; &lt;p&gt;In this post I will talk about how to use Disqus comments in Sitefinity Blogs.&lt;/p&gt; &lt;p&gt;Getting started with Disqus is pretty simple, go to&amp;nbsp;&lt;a href="http://www.disqus.com"&gt;Disqus.com&lt;/a&gt;&amp;nbsp;and signup, all you need is to provide Site information (site where you will use Disqus comments) and your moderator information.&amp;nbsp;&lt;/p&gt; &lt;p&gt;Now navigate to&amp;nbsp;&lt;a href="http://docs.disqus.com/developers/universal/"&gt;Disqus developers&lt;/a&gt;&amp;nbsp;section where you will find an universal code that you can embed. Copy that code and paste it into a user control in your Sitefinity Web Application.&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/disqusembed.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disqusembed.png?sfvrsn=0" title="DisqusEmbed" style="vertical-align: middle;" width="500" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;
Below is how how your user control will look like -&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/disquscode.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disquscode.png?sfvrsn=0" title="DisqusCode" width="500" style="vertical-align: middle;" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You would need to change "&lt;strong&gt;disqus_shortname&lt;/strong&gt;" to your disqus short name. This is how your control setup will look like -&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disquscontrolsetup.png?sfvrsn=0" title="DisqusControlSetup" style="vertical-align: middle;" /&gt;&lt;/p&gt; &lt;p&gt;Now navigate to Sitefinity's backend and go to &lt;strong&gt;Design-&amp;gt; Widget Templates&lt;/strong&gt;&amp;nbsp;and look for &lt;strong&gt;"Full Blog Post Item" &lt;/strong&gt;template and edit the template.&amp;nbsp;&lt;/p&gt; &lt;p&gt;At the top of the Widget Template add the below lines to register your Disqus Comments control.&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disquscontrolregister.png?sfvrsn=0" title="DisqusControlRegister" width="500" style="vertical-align: middle;" /&gt;&lt;/p&gt; &lt;p&gt;Now scroll to the end of the template where you will find a section where Sitefinity's default Comments controls can be found. Below image will show you where they are -&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/disqusdefaultsfcomments.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disqusdefaultsfcomments.png?sfvrsn=0" title="DisqusDefaultSfComments" width="500" style="vertical-align: middle;" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;replace these controls with the disqus comments control that has been registered above, below is how it would look like - &amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/disquscontrolregistered.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/disquscontrolregistered.png?sfvrsn=0" title="DisqusControlRegistered" width="500" style="vertical-align: middle;" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Reload your comments page and you should now see Disqus comments as your comments system in Sitefinity Blog Post.&lt;/p&gt; &lt;p&gt;To download a sample of code used in this post &lt;a href="http://www.bluegenegeek.com/docs/code-samples/disquscommentsforsitefinity.zip"&gt;Click here&lt;/a&gt;&amp;nbsp;and if you want to see a running sample, well if you are reading this post, this is a running sample :)&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Fri, 11 Nov 2011 04:02:10 Z</pubDate></item><item><guid isPermaLink="false">27f07665-3972-4671-817e-2e9183a7220e</guid><link>http://www.bluegenegeek.com/blog/2011/11/06/developing-with-disqus-on-localhost</link><a10:author><a10:name> </a10:name></a10:author><category>disqus</category><category>General</category><title>Developing with Disqus on localhost</title><description>&lt;p&gt;&lt;a href="http://disqus.com/" target="_blank"&gt;Disqus&lt;/a&gt; is a popular comment platform which can be integrated to any website by using simple Javascript snippet code.&lt;/p&gt; &lt;p&gt;This article talks about how to develop with Disqus, on localhost or on your development environment. &lt;/p&gt; &lt;p&gt;&amp;nbsp;When you are running Disqus for the first time, disqus tries to verify your URL, if your URL fails to match certain criteria you will be presented with "&lt;strong&gt;We were unable to load Disqus&lt;/strong&gt;" message. Unfortunately this message will also be shown when you are running your website locally.&lt;/p&gt; &lt;p&gt;To overcome this error message and still have Disqus working correctly when developing(in localhost scenarios) you will have to set &lt;strong&gt;disqus_developer &lt;/strong&gt;variable before your regular Disqus JavaScript snippet. Below is how you would do it -&lt;/p&gt; &lt;p&gt; &lt;pre&gt;&lt;strong&gt;var disqus_developer = 1;&lt;/strong&gt;&lt;/pre&gt; &lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sun, 06 Nov 2011 06:40:03 Z</pubDate></item><item><guid isPermaLink="false">8483392e-d1f3-4609-b398-2a3c59e9f191</guid><link>http://www.bluegenegeek.com/blog/2011/11/03/sitefinity-4.3-released</link><a10:author><a10:name> </a10:name></a10:author><category>release</category><category>Sitefinity</category><category>Telerik</category><title>Sitefinity 4.3 released </title><description>&lt;p&gt;Sitefinity 4.3 has been released. Lots of new features and huge number of bug fixes. &lt;/p&gt; &lt;p&gt;I am really excited about a lot of new features in Ecommerce, to read more head to release notes &lt;a href="http://www.sitefinity.com/devnet/forums/sitefinity-4-x/general-discussions/sitefinity-4-3-released.aspx"&gt;here &lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Thu, 03 Nov 2011 17:55:24 Z</pubDate></item><item><guid isPermaLink="false">8f1faa84-fbf7-4b76-bdf7-ad10e0e8fe1a</guid><link>http://www.bluegenegeek.com/blog/2011/10/11/changing-product-detail-url-in-sitefinity-ecommerce</link><a10:author><a10:name> </a10:name></a10:author><category>eCommerce</category><category>Sitefinity</category><title>Changing product detail URL in Sitefinity Ecommerce </title><description>By default, Sitefinity Ecommerce ships with a date formatted URL for the Product Detail page, which comes very handy if you just want to let your users know when the product was published. But as with any other part of Sitefinity, this URL can be highly customized to meet your own needs and make even more Pretty URL or PURL in general.
&lt;div&gt;&lt;/div&gt; &lt;p&gt;You can change the default route of products in 2 ways&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ol&gt; &lt;li&gt;1. Using the &lt;strong&gt;urlFormat &lt;/strong&gt;in the backend of Sitefinity&lt;/li&gt; &lt;li&gt;2. Extending &lt;strong&gt;OpenAccessCatalogDataProvider&lt;/strong&gt; in your application&lt;/li&gt; &lt;/ol&gt; &lt;div&gt;Below is the default URL format of products in Ecommerce&lt;/div&gt; &lt;div&gt;&lt;img width="500" src="http://www.bluegenegeek.com/images/default-album/defaulturlformat.png?sfvrsn=0" /&gt;&lt;br /&gt; &lt;/div&gt; &lt;h2&gt;Using urlFormat in the backend of Sitefinity &amp;ndash;&lt;/h2&gt; &lt;p&gt;This option will let you extend the detail to not to have the date in the URL. To attain this URL format you would need to navigate to Backend-&amp;gt; Administration-&amp;gt; Settings-&amp;gt; Advanced-&amp;gt; Catalog-&amp;gt;Providers-&amp;gt; OpenAccessProvider-&amp;gt; Parameters and then create a new parameter with the name &lt;strong&gt;urlFormat &lt;/strong&gt;and value &lt;strong&gt;/[UrlName]&lt;/strong&gt;, this will change product detail URL to not have date. Please also note that new products added to the system will get new URL format by default but already existing products doesn&amp;rsquo;t change the URL by default. You will have to republish the existing products toget the new URL format. Below is a screenshot on how the new URL would look like -&lt;/p&gt; &lt;p&gt;&lt;img width="500" src="http://www.bluegenegeek.com/images/default-album/changingurlformat.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;h2&gt;Extending OpenAccessCatalogDataProvider - &lt;/h2&gt; &lt;p&gt;This option will let you extend the route of product detail in any way you want. You have complete control over the route that leads to the detail page. Here is how you would do it &amp;ndash;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&amp;nbsp;You will need to change the &lt;strong&gt;ProviderType&lt;/strong&gt; to a custom class in your own application.&lt;/li&gt; &lt;li&gt;&amp;nbsp;Add the code to extend the route. (see example below)&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;pre class="brush: csharp;"&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;using Telerik.Sitefinity.GenericContent.Model; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;using Telerik.Sitefinity.Modules.Ecommerce.Catalog.Data; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;namespace SitefinityWebApp &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;{ &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;public class CustomProductRouteHandler : OpenAccessCatalogDataProvider &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;{ &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;public override string GetUrlFormat(ILocatable item) &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;{ &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;return "/[DetailRouteKey]/[UrlName]"; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;} &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;protected override string GetUrlPart&amp;lt;T&amp;gt;(string key, string format, T item) &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;{ &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;if (key == "DetailRouteKey") &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;{ &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;return "Detail"; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;} &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;return base.GetUrlPart&amp;lt;T&amp;gt;(key, format, item); &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;} &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;} &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;} &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/pre&gt; &lt;/div&gt; &lt;p&gt;&lt;img width="500" src="http://www.bluegenegeek.com/images/default-album/customroutekey.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Above is an image on how the changed URL format would look like, please note that you can get the "&lt;strong&gt;DetailRouteKey&lt;/strong&gt;" in any way you want and feed any string into the URL at this moment. &lt;/p&gt; &lt;p&gt;Also, as above note that new products added to the system will getnew URL format by default but already existing products doesn&amp;rsquo;t change the URLby default. You will have to republish the existing products to get the new URLformat.&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Tue, 11 Oct 2011 04:01:21 Z</pubDate></item><item><guid isPermaLink="false">bee66345-5809-41bb-911e-4b9f7b661ff0</guid><link>http://www.bluegenegeek.com/blog/2011/10/07/thank-you-steve</link><a10:author><a10:name> </a10:name></a10:author><category>RIP Steve</category><category>apple</category><title>Thank you, Steve </title><description>&lt;div&gt;"Whether or not you like Apple, every engineer should mourn the passing of Steve Jobs. He was quite possibly our time's greatest builder." via &lt;a href="http://twitter.com/#!/nkohari/status/121798814880382977"&gt;Nate Kohari&lt;/a&gt;&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;Thank you for everything you did for this industry Steve.&lt;/div&gt; &lt;div&gt;&lt;a href="http://www.apple.com/stevejobs/"&gt;&lt;img width="500" src="http://www.bluegenegeek.com/images/default-album/stevejobs.png?sfvrsn=0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;/div&gt; &lt;br /&gt;
Image credit &lt;a href="http://www.apple.com/"&gt;apple.com&lt;/a&gt;</description><pubDate>Fri, 07 Oct 2011 03:58:46 Z</pubDate></item><item><guid isPermaLink="false">331427c8-aaa8-48ae-b721-1539e3cf1cbd</guid><link>http://www.bluegenegeek.com/blog/2011/09/29/sitefinity-4.2-sp1-released</link><a10:author><a10:name> </a10:name></a10:author><category>release</category><category>Sitefinity</category><title>Sitefinity 4.2 SP1 released </title><description>&lt;p&gt;The Service Pack 1 release of Sitefinity 4.2 has been released, go get it while its hot!&lt;/p&gt; &lt;p&gt;The best feature in my opinion is the Migration Module now supports Sitefinity 3.7 Community and Standard edition projects, both .NET35 and .NET40 :) wow.&lt;/p&gt; &lt;p&gt;You can read more about the &lt;a href="http://www.sitefinity.com/devnet/forums/sitefinity-4-x/general-discussions/sitefinity-4-2-sp1-released.aspx"&gt;release notes here &lt;/a&gt;&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Thu, 29 Sep 2011 03:56:58 Z</pubDate></item><item><guid isPermaLink="false">eff59d6d-09cf-40b4-8f4c-68539946c289</guid><link>http://www.bluegenegeek.com/blog/2011/09/26/disable-autocomplete-on-textbox-in-asp.net</link><a10:author><a10:name> </a10:name></a10:author><category>code</category><category>ASP.NET</category><title>Disable AutoComplete on Textbox in ASP.NET </title><description>There are cases when you want to turn off AutoComplete that all modern browsers offer for textbox.
&lt;div&gt;This article will guide you through on how to disable AutoComplete in ASP.NET.&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;There are two ways you can achieve this -&lt;/div&gt; &lt;div&gt; &lt;ol&gt; &lt;li&gt;Using AutoCompleteType (works in IE and .NET specific). You can read more about &lt;a href="http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.autocompletetype.aspx"&gt;AutoCompleteType here&lt;/a&gt;&lt;/li&gt; &lt;li&gt;Using AutoComplete (works in all browsers, HTML attribute). &lt;/li&gt; &lt;/ol&gt; &lt;div&gt;&lt;strong&gt;AutoCompleteType&lt;/strong&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;AutoCompleteType can be used for achieve different behavior on the textbox, using AutoCompleteType="Disabled" turns off AutoComplete when using IE.&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;asp:TextBox ID="tbAutoCompleteIE" runat="server" AutoCompleteType="Disabled"&amp;gt;&amp;lt;/asp:TextBox&amp;gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt; &lt;div&gt; &lt;div&gt;&lt;strong&gt;AutoComplete&lt;/strong&gt;&lt;/div&gt; &lt;/div&gt; &lt;div&gt;AutoComplete is a HTML attribute that can be used for any language / platform and it works in all the browsers. AutoComplete="Off" on the textbox (input) turns off AutoComplete on all browsers.&lt;/div&gt; &lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;asp:TextBox ID="tbAutoCompleteAll" runat="server" autocomplete="Off"&amp;gt;&amp;lt;/asp:TextBox&amp;gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;/div&gt; &lt;div&gt;You can download code for this post &lt;a href="http://www.bluegenegeek.com/Libraries/Code_Samples/DisableAutoComplete.sflb.ashx"&gt;here&lt;/a&gt;. &lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;Hope this helps.&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;Cheers&lt;/div&gt; &lt;div&gt;Venkata&lt;/div&gt;</description><pubDate>Mon, 26 Sep 2011 03:54:59 Z</pubDate></item><item><guid isPermaLink="false">11fbf3ce-4fbd-4794-81eb-55d9a9390cc1</guid><link>http://www.bluegenegeek.com/blog/2011/09/04/anonymous-checkout-in-sitefinity-ecommerce</link><a10:author><a10:name> </a10:name></a10:author><category>eCommerce</category><category>Sitefinity</category><title>Anonymous checkout in Sitefinity eCommerce</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_pnlContent"&gt; &lt;p&gt;Often on your eCommerce website,you might want to allow users to anonymously checkout that is allowing them to place an order even though they are not a customer of your website. There are number of reasons on why you allow anonymous checkout which you can read more about&amp;nbsp;&lt;a href="http://www.whereoware.com/About/Blog/tabid/117/EntryId/7/Web-tip-anonymous-checkout.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;This post will show you how you would enable anonymous checkout of Sitefinity eCommerce 4.2.&lt;/p&gt; &lt;p&gt;The Checkout widget controls the checkout process in Sitefinity eCommerce, so when you drag and drop Checkout widget on to your page, hit edit for bringing up the control designer property screen&lt;/p&gt; &lt;img src="http://www.bluegenegeek.com/images/default-album/checkoutsimple.png?sfvrsn=0" /&gt;&lt;br /&gt; &lt;p&gt;Hit advanced button on the control designer to bring up advanced properties. In the list of properties of checkout widget there is a property called&amp;nbsp;&lt;strong&gt;CheckoutRequiresLogin,&amp;nbsp;&lt;/strong&gt;by default this value is set to true which means, every user that will checkout using your website will need to register with your website. But if you change the setting to false, the eCommerce system will allow users to checkout even though they are not a registered user of the system.&lt;/p&gt; &lt;p&gt;Below is a screenshot of where the property is on Checkout Designer properties.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/checkoutadvanced.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sun, 04 Sep 2011 19:38:13 Z</pubDate></item><item><guid isPermaLink="false">d36439c8-bc1b-410f-96a4-fe2c007b7ab8</guid><link>http://www.bluegenegeek.com/blog/2011/08/11/get-started-with-ecommerce-module-using-sitefinity-4.2</link><a10:author><a10:name> </a10:name></a10:author><category>eCommerce</category><category>Telerik</category><category>Sitefinity</category><title>Get started with eCommerce module using Sitefinity 4.2</title><description>&lt;p&gt;The Sitefinity&amp;rsquo;s 4.2 Release, brings a new module to the picture&amp;nbsp;&lt;strong&gt;ECommerce&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;This post walks you through how to setup a store and all the steps that are required in the process.&lt;/p&gt; &lt;p&gt;First let&amp;rsquo;s talk about the feature set of the eCommerce module -&lt;/p&gt; &lt;h2&gt;Features&lt;/h2&gt; &lt;p&gt;The initial release of eCommerce lets you &amp;ndash;&lt;/p&gt; &lt;h3&gt;Backend Features&lt;/h3&gt; &lt;br /&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Products&lt;br /&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Product Types&lt;br /&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Departments&lt;br /&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Customers&amp;nbsp;&lt;br /&gt;
5.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Orders&lt;br /&gt;
6.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Shipping Methods&lt;br /&gt;
7.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Discounts and Sale Prices&lt;br /&gt;
8.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Payment Methods&lt;br /&gt;
9.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Manage Taxes&lt;br /&gt; &lt;p&gt;10.&amp;nbsp;&amp;nbsp;&amp;nbsp;Reports &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/sf_ecommerce_default.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sf_ecommerce_default.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;h3&gt;Frontend Features&lt;/h3&gt; &lt;br /&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Showing Product List with Sale / VAT Price&lt;br /&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Product Detail page with configurable routing&lt;br /&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Shopping Cart page&lt;br /&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Checkout page with Anonymous login&lt;br /&gt;
5.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;My Orders page which lets the users see the orders they placed&lt;br /&gt; &lt;p&gt;6.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Invoice page which shows the invoice of the purchased order&lt;/p&gt;
To get started with the eCommerce module, a merchant will need&lt;br /&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Pages (that shows various eCommerce controls)&lt;br /&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Basic, Shipping and SMTP settings&lt;br /&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Payment Method&lt;br /&gt; &lt;p&gt;Let us talk about each of them in detail &amp;ndash;&lt;/p&gt; &lt;h2&gt;Pages required by eCommerce&lt;/h2&gt; &lt;p&gt;Any basic store will need the following pages to be created in Sitefinity pages section &amp;ndash;&lt;/p&gt; &lt;br /&gt; &lt;strong&gt;1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Product List Page:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;The page that lists the available products in the store.&lt;/em&gt;&lt;br /&gt; &lt;strong&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Shopping Cart Page:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;The page that shows the shopping cart control and lets the users checkout.&lt;/em&gt;&lt;br /&gt; &lt;strong&gt;3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Checkout Page:&lt;/strong&gt;&amp;nbsp;&lt;em&gt;The page that accepts user&amp;rsquo;s credit card information and performs checkout.&lt;/em&gt;&lt;br /&gt; &lt;strong&gt;4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Confirmation Page:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;The page that the user will get redirected to after placing an order.&lt;/em&gt;&lt;br /&gt; &lt;h2&gt;Settings required by eCommerce&lt;/h2&gt; &lt;p&gt;The following settings are required by the eCommerce module to work correctly &amp;ndash;&lt;/p&gt; &lt;br /&gt; &lt;em&gt;1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/em&gt;&lt;strong&gt;Basic eCommerce Settings&lt;/strong&gt;&amp;nbsp;&lt;em&gt;(under Sitefinity/Administration/Settings/Advanced/Ecommerce)&lt;/em&gt;&lt;br /&gt; &lt;p&gt;a.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Default Currency&lt;/p&gt; &lt;p&gt;b.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Shipping From Country&lt;/p&gt; &lt;p&gt;c.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Shipping From Zip&lt;/p&gt; &lt;p&gt;d.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Merchant Email&lt;/p&gt; &lt;br /&gt; &lt;em&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/em&gt;&lt;strong&gt;Shipping Settings&lt;/strong&gt;&amp;nbsp;&lt;em&gt;(under Sitefinity/Administration/Settings/Advanced/Shipping)&lt;/em&gt;&lt;br /&gt; &lt;p&gt;a.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Shipping Carrier Provider&lt;/p&gt; &lt;br /&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;SMTP Settings&lt;/strong&gt;&amp;nbsp;&lt;em&gt;(under Sitefinity/Administration/Settings/Advanced/System/SMTP (Email Settings))&lt;/em&gt;&lt;br /&gt; &lt;p&gt;a.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Settings for sending out email&lt;/p&gt; &lt;h2&gt;Payment Method&lt;/h2&gt; &lt;p&gt;Every Ecommerce system requires payments methods to be setup to process payments. The Ecommerce module will support two different Payment Processors by default&lt;/p&gt; &lt;br /&gt; &lt;strong&gt;1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;Authorize .net&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;&lt;strong&gt;a.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;Authorize .net by default needs URL, Login Id and transaction key.&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;br /&gt; &lt;strong&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&lt;strong&gt;PayPal PayFlowPro&lt;/strong&gt;&lt;br /&gt; &lt;p&gt;a.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Thee PayPal PayFlow Pro by default needs URL, Username, Password, Vendor and Partner information. You can signup for a PayPal PayFlowPro account here&lt;/p&gt; &lt;h2&gt;Widgets&lt;/h2&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;br /&gt;
1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Product List:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;This widget shows a list of products that are available in the store.&lt;/em&gt;&lt;br /&gt;
2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Buy Now:&lt;/strong&gt;&amp;nbsp;Useful when the merchant wants to show a single product buy now option&lt;br /&gt;
3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Shopping cart Summary:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;&amp;nbsp;This widget shows the summary of the users shopping cart (Number of items in the cart and subtotal information)&lt;/em&gt;&lt;br /&gt;
4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Shopping cart:&lt;/strong&gt;&amp;nbsp;&lt;em&gt;This widget shows the shopping cart of the uses and lets the user checkout or continue shopping.&lt;/em&gt;&lt;br /&gt;
5.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Checkout:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;This widget shows the Checkout (Order related) form and lets the user to place the Order.&lt;/em&gt;&lt;br /&gt;
6.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Order list:&amp;nbsp;&lt;/strong&gt;&lt;em&gt;This widget shows list of orders place for the online store.&lt;/em&gt;&lt;br /&gt;
7.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;Order invoice:&lt;/strong&gt;&amp;nbsp;&lt;em&gt;This widget shows the invoice of a particular Order&lt;/em&gt;&lt;br /&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sf_ecommerce_widgets.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;I will be posting more in detail regarding each widget and how to use the other parts of the Sitefinity Ecommerce system soon.&lt;/p&gt; &lt;p&gt;Stay tuned!&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Thu, 11 Aug 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">7670f705-42c5-4c5d-b249-4d420f22ee95</guid><link>http://www.bluegenegeek.com/blog/2011/07/17/i-don't-always-test-my-code</link><a10:author><a10:name> </a10:name></a10:author><category>test code</category><category>Fun</category><category>General</category><title>I don't always test my code....</title><description>Saw this funny image and thought I would share.
&lt;div&gt;Image credit:&amp;nbsp;&lt;a href="http://imgur.com/gallery/y7Hm9"&gt;http://imgur.com/gallery/y7Hm9&lt;/a&gt;&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/testcode.jpg?sfvrsn=0" /&gt;&lt;br /&gt; &lt;/div&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sun, 17 Jul 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">470a3653-5233-4a4f-8a0b-8468088f9830</guid><link>http://www.bluegenegeek.com/blog/2011/06/20/republishing-pages-in-sitefinity-4.x</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>Sitefinity</category><category>Telerik</category><title>Republishing Pages in Sitefinity 4.X</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;If you would like to Republish pages in Sitefinity 4.X for any reason this post will help you write a custom page to do this task.&lt;/p&gt; &lt;p&gt;Up until 4.1 this Republish page is a very important page to have as when you make changes to the template, the content pages did not get the latest changes from the template. You had to open up each and every content page and then hit Publish on that page. This is a cumbersome task especially if you have a lot of content pages.&lt;/p&gt; &lt;p&gt;To ease up this procedure here is a quick asp.net page to Republish all pages(and clear the cache) -&lt;/p&gt; &lt;p&gt;Create a page called RepublishPages.aspx on the root of the Sitefinity website. In the code behind of that page copy &amp;amp; paste the following code -&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;System;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;System.Linq;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;Telerik.Sitefinity;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;Telerik.Sitefinity.GenericContent.Model;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;Telerik.Sitefinity.Modules.Pages;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;Telerik.Sitefinity.Pages.Model;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;namespace&amp;nbsp;SitefinityWebApp&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;partial&amp;nbsp;class&amp;nbsp;RePublishPages&amp;nbsp;:&amp;nbsp;System.Web.UI.Page&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;protected&amp;nbsp;void&amp;nbsp;Page_Load(object&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;pageNodes&amp;nbsp;=&amp;nbsp;App.WorkWith()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Pages()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.LocatedIn(Telerik.Sitefinity.Fluent.Pages.PageLocation.Frontend)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Get()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Where(pN&amp;nbsp;=&amp;gt;&amp;nbsp;pN.Page.Status&amp;nbsp;==&amp;nbsp;ContentLifecycleStatus.Live)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.ToList();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(PageNode&amp;nbsp;p&amp;nbsp;in&amp;nbsp;pageNodes)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;myId&amp;nbsp;=&amp;nbsp;p.Page.Id;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;manager&amp;nbsp;=&amp;nbsp;PageManager.GetManager();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;myDraft&amp;nbsp;=&amp;nbsp;manager.EditPage(myId,&amp;nbsp;true);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;manager.PublishPageDraft(myDraft,&amp;nbsp;true);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;manager.SaveChanges();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;And whenever you want to Republish pages just browse to this page and all the pages would be published with the latest changes.&lt;/p&gt; &lt;p&gt;&amp;nbsp;NOTE: Majority of the code is from this discussion -&amp;nbsp;&lt;a href="http://www.sitefinity.com/devnet/forums/sitefinity-4-x/bugs-issues/adding-content-to-template-does-not-show-on-pages.aspx"&gt;Not answered Adding content to template does not show on pages&amp;nbsp;&lt;/a&gt;but changed a little according to my comment&amp;nbsp;&lt;a href="http://www.sitefinity.com/devnet/forums/sitefinity-4-x/bugs-issues/adding-content-to-template-does-not-show-on-pages.aspx#1627968"&gt;here&lt;/a&gt;&amp;nbsp;.&lt;/p&gt; &lt;p&gt;If you would like to download the Republish Page on the whole (aspx and codebehind)&amp;nbsp;&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/Libraries/Code_Samples/RePublishPages.sflb.ashx"&gt;Click Here&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 20 Jun 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">1dc6f7fa-0537-4ec5-bce3-07292a35b894</guid><link>http://www.bluegenegeek.com/blog/2011/06/14/telerik-mvc-music-store-mvc-music-store-with-telerik-openaccess-orm</link><a10:author><a10:name> </a10:name></a10:author><category>OpenAccess Orm</category><category>Telerik mvc music store</category><category>Telerik</category><title>Telerik MVC Music Store : MVC Music Store with Telerik OpenAccess ORM</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt;I would like to introduce you all to&amp;nbsp;&lt;a href="http://telerikmvcmusicstore.codeplex.com/"&gt;Telerik MVC Music Store&lt;/a&gt;.&amp;nbsp;The sample is completely based off&amp;nbsp;&lt;a href="http://mvcmusicstore.codeplex.com/"&gt;MVC Music Store&lt;/a&gt;, with&amp;nbsp;&lt;a href="http://www.telerik.com/products/orm.aspx"&gt;Telerik OpenAccess ORM&lt;/a&gt;&amp;nbsp;as database accessing mechanism.
&lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;I would love if you download and give the project a try.&lt;/div&gt; &lt;div&gt;&lt;br /&gt; &lt;/div&gt; &lt;div&gt;Cheers&amp;nbsp;&lt;/div&gt; &lt;div&gt;Venkata&lt;/div&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Tue, 14 Jun 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">afd9d44a-fa5b-4caa-a482-7be975cc2bce</guid><link>http://www.bluegenegeek.com/blog/2011/06/13/telerik-open-access-orm-include-equivalent---fetchstrategy</link><a10:author><a10:name> </a10:name></a10:author><category>FetchStrategy</category><category>OpenAccess Orm</category><category>Telerik</category><title>Telerik Open Access Orm : Include Equivalent - FetchStrategy</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl05_pnlPostContent"&gt; &lt;p&gt;ADO.NET Entity Framework 4.0 has an friendly method for loading related objects in a explicit way by using "Include"&lt;/p&gt; &lt;p&gt;Below is an example from&amp;nbsp;&lt;a href="http://mvcmusicstore.codeplex.com/"&gt;MVC Music Store&lt;/a&gt;.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; public&amp;nbsp;ActionResult&amp;nbsp;Browse(string&amp;nbsp;genre)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Retrieve&amp;nbsp;Genre&amp;nbsp;and&amp;nbsp;its&amp;nbsp;Associated&amp;nbsp;Albums&amp;nbsp;from&amp;nbsp;database&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;genreModel&amp;nbsp;=&amp;nbsp;storeDB.Genres.Include("Albums")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Single(g&amp;nbsp;=&amp;gt;&amp;nbsp;g.Name&amp;nbsp;==&amp;nbsp;genre);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;View(genreModel);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;In this method, Generes and Albums are related so EF provides an easy way to get both in a single call.&lt;/p&gt; &lt;p&gt;But the main topic of this post is how to achieve this behavior if you are using&amp;nbsp;&lt;a href="http://www.telerik.com/products/orm.aspx"&gt;Telerik OpenAccess ORM&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;See the code below -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ActionResult&amp;nbsp;Browse(string&amp;nbsp;genre)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Retrieve&amp;nbsp;Genre&amp;nbsp;and&amp;nbsp;its&amp;nbsp;Associated&amp;nbsp;Albums&amp;nbsp;from&amp;nbsp;database&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FetchStrategy&amp;nbsp;fetchStrategy&amp;nbsp;=&amp;nbsp;new&amp;nbsp;FetchStrategy();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fetchStrategy.LoadWith&amp;lt;Genre&amp;gt;(g&amp;nbsp;=&amp;gt;&amp;nbsp;g.Albums);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;storeDB.FetchStrategy&amp;nbsp;=&amp;nbsp;fetchStrategy;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Genre&amp;nbsp;genreModel&amp;nbsp;=&amp;nbsp;storeDB.Genres.FirstOrDefault(g&amp;nbsp;=&amp;gt;&amp;nbsp;g.Name&amp;nbsp;==&amp;nbsp;genre);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;View(genreModel);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;You will need a "FetchStargegy" and Load Genre with Albums while getting the results.&lt;/p&gt; &lt;p&gt;Hope this helps.&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 13 Jun 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">34e16dd4-efb1-41c3-94d1-7e8683399fce</guid><link>http://www.bluegenegeek.com/blog/2011/04/30/working-with-ambigious-controller-names-in-mvc3</link><a10:author><a10:name> </a10:name></a10:author><category>AmbiguousControllers</category><category>code snippet</category><category>MVC</category><title>Working with ambigious controller names in MVC3</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl01_pnlPostContent"&gt; &lt;p&gt;If you are working with ASP.NET MVC2 or above you might want to have same controller name across multiple areas. For example you might have an Home Controller on your root of your website and also a Home Controller on the Admin Area of your website. Looks like a a reasonable thing to have&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sameareaname.png?sfvrsn=0" /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;But if you run your application you will have an error saying "Multiple Types were found that match the controller..." or like the screenshot below&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/ambiguouscontrollererror.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/ambiguouscontrollererror.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;To overcome this error you need register a route specific to the area with the namespace. Use the code snippet below-&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; public&amp;nbsp;static&amp;nbsp;void&amp;nbsp;RegisterRoutes(RouteCollection&amp;nbsp;routes)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;routes.IgnoreRoute("{resource}.axd/{*pathInfo}");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//General&amp;nbsp;Route&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;routes.MapRoute(&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"Default",&amp;nbsp;//&amp;nbsp;Route&amp;nbsp;name&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"{controller}/{action}/{id}",&amp;nbsp;//&amp;nbsp;URL&amp;nbsp;with&amp;nbsp;parameters&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new&amp;nbsp;{&amp;nbsp;controller&amp;nbsp;=&amp;nbsp;"Home",&amp;nbsp;action&amp;nbsp;=&amp;nbsp;"Index",&amp;nbsp;id&amp;nbsp;=&amp;nbsp;UrlParameter.Optional&amp;nbsp;},&amp;nbsp;//&amp;nbsp;Parameter&amp;nbsp;defaults&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new&amp;nbsp;string[]&amp;nbsp;{&amp;nbsp;"AmbiguousControllers.Controllers"&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Route&amp;nbsp;for&amp;nbsp;Admin&amp;nbsp;Area&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;routes.MapRoute(&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"Admin&amp;nbsp;Default",&amp;nbsp;//&amp;nbsp;Route&amp;nbsp;name&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"{controller}/{action}/{id}",&amp;nbsp;//&amp;nbsp;URL&amp;nbsp;with&amp;nbsp;parameters&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new&amp;nbsp;{&amp;nbsp;area&amp;nbsp;=&amp;nbsp;"Admin",&amp;nbsp;controller&amp;nbsp;=&amp;nbsp;"Home",&amp;nbsp;action&amp;nbsp;=&amp;nbsp;"Index",&amp;nbsp;id&amp;nbsp;=&amp;nbsp;UrlParameter.Optional&amp;nbsp;},&amp;nbsp;//&amp;nbsp;Parameter&amp;nbsp;defaults&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new&amp;nbsp;string[]&amp;nbsp;{&amp;nbsp;"AmbiguousControllers.Areas.Admin.Controllers"&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;And now you can have multiple controllers with the same name.&lt;/p&gt; &lt;p&gt;&amp;nbsp;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sat, 30 Apr 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">5dd9dad6-72b0-487f-9f2c-38f4ac266eeb</guid><link>http://www.bluegenegeek.com/blog/2011/03/21/making-your-website-ie9-friendly</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>IE9</category><title>Making your website IE9 friendly</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;&lt;a href="http://www.beautyoftheweb.com/"&gt;IE9&lt;/a&gt;&amp;nbsp;was released recently. It is brand new browser from Microsoft, which uses their new "Chakra" Javascript engine which makes it the fastest browser till date (even beating Chrome 10).&lt;/p&gt; &lt;p&gt;IE9 has an interesting feature called "Site Pinning". This blog post talks about how to change your website to make use of that and give the users of your website a "app" feel on Windows 7.&lt;/p&gt; &lt;p&gt;To begin with let us first add a shortcurt icon&lt;/p&gt; &lt;p&gt;Add this line in the HEAD section of your page.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;rel="shortcut&amp;nbsp;icon"&amp;nbsp;type=image/x-icon&amp;nbsp;href="/images/shortcut.png"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;and when you drag the tab in IE on to your Windows 7 taskbar, your shortcut icon shows up in task bar and the the you get a nice color scheme which is similar to your website when you open your website.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/ie9-shortcut.png?sfvrsn=0" /&gt;&amp;nbsp;&lt;img src="http://www.bluegenegeek.com/images/default-album/ie9-colorscheme.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;IE9 also lets you add "Jump list tasks", which can be done by the following snippet -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;meta&amp;nbsp;name="msapplication-task"&amp;nbsp;content="name=Follow&amp;nbsp;on&amp;nbsp;Twitter;action-uri=http://twitter.com/subbaraokv;icon-uri=/images/twitter_ico.ico"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;meta&amp;nbsp;name="msapplication-task"&amp;nbsp;content="name=Subscribe&amp;nbsp;to&amp;nbsp;Feed;action-uri=http://www.bluegenegeek.com/blogs.rss.ashx;icon-uri=/images/feedicon.ico"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;meta&amp;nbsp;name="msapplication-task"&amp;nbsp;content="name=About&amp;nbsp;Me;action-uri=http://www.bluegenegeek.com/About.aspx;icon-uri=/images/AboutMe.ico"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;The basic idea behind the above above snippet is you can add "tasks" with your own text and urls and have a nice little icon to go along with it.&lt;/p&gt; &lt;p&gt;Once this is done this is how it would look like -&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/ie9-taskslist.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/ie9-taskslist.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Mon, 21 Mar 2011 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">a3869fd7-957f-4eb5-8463-53013020cd8a</guid><link>http://www.bluegenegeek.com/blog/2011/02/05/getting-started-with-mercurial-and-tortoisehg</link><a10:author><a10:name> </a10:name></a10:author><category>Tortoise hg</category><category>Mercurial</category><category>Version Control</category><title>Getting Started with Mercurial and TortoiseHG</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Mercurial"&gt;Mercurial&amp;nbsp;&lt;/a&gt;is a distributed version controls system (DVCS) and&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/TortoiseHg"&gt;TortoiseHG&amp;nbsp;&lt;/a&gt;is a GUI based Mercurial Client for Windows.&lt;/p&gt; &lt;p&gt;To install TortoiseHG on windows, download the TortoiseHG client from&amp;nbsp;&lt;a href="http://tortoisehg.bitbucket.org/"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Run through the installer.&lt;/p&gt; &lt;p&gt;Once the installation is finished -&lt;/p&gt; &lt;p&gt;Open the folder that you want to create a repository for&lt;/p&gt; &lt;p&gt;Right click on the folder go to TortoiseHG Menu and click on Global Settings&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_createrepo.png?sfvrsn=0"&gt;&lt;/a&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_globalsettings.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_globalsettings.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;On the Global Settings window go to Commit and enter your Name you might want to follow a format like &amp;lt;Name&amp;gt; &amp;lt;Email&amp;gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_commitsettings.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_commitsettings.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;Click OK.&lt;/p&gt; &lt;p&gt;Now to create a repository, right click on the source code folder go to TortoiseHG menu and click on Create Repository here.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_createrepo.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_createrepo.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;Hit Create on the init screen.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_init.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;With this you have created a new repository using Mercurial and TortoiseHG. You can now commit code to the repository.&lt;/p&gt; &lt;p&gt;Now if you want to synchronize your local repository to cloud code hosting service like&amp;nbsp;&lt;a href="http://bitbucket.org/"&gt;BitBucket&lt;/a&gt;&amp;nbsp;you will have to setup sync settings.&amp;nbsp;&lt;/p&gt; &lt;p&gt;To get to the sync settings page right click on the folder you want to sync click TortoiseHG -&amp;gt; Repository Settings.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_repositorysettings.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_repositorysettings.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;On the repository settings page, click Synchronize and click add button for remote repository settings grid.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_syncsettings.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_syncsettings.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;Type in the URL, of the repository and username and password if any to connect to that repository and click ok. You will now see the remote repository in the list.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_remoterepo.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Click OK and save the settings.&lt;/p&gt; &lt;p&gt;Now to commit to your cloud code hosting service, click TortoiseHG-&amp;gt;Synchronize&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_commitsync.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_commitsync.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;In the synchronize window choose your remote path we added earlier and click Push.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/hg_remotecommit.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/hg_remotecommit.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;And your code will be pushed to your clould code hosting service.&lt;/p&gt; &lt;p&gt;Hope this helped&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sat, 05 Feb 2011 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">33561252-18ff-4b6f-9528-bc07d83fda6c</guid><link>http://www.bluegenegeek.com/blog/2011/02/04/adding-telerik-extensions-for-mvc3-using-nuget-awesomeness</link><a10:author><a10:name> </a10:name></a10:author><category>Nuget</category><category>Telerik Extensions</category><category>Telerik</category><title>Adding Telerik Extensions for MVC3 using NuGet awesomeness</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt; &lt;p&gt;This is fourth in the series posts I am doing to cover Telerik Extensions for ASP.NET MVC3(Updating the MVC3 from today's post).&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-12-12/Getting_Started_with_Telerik_Extensions_for_ASP_NET_MVC.aspx"&gt;Getting Started with Telerik Extensions for ASP.NET MVC&amp;nbsp;&lt;br /&gt; &lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-12-19/Telerik_Extensions_for_ASP_NET_MVC_-_The_Grid.aspx"&gt;Telerik Extensions for ASP.NET MVC - The Grid&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/11-01-19/Telerik_Extensions_for_ASP_NET_MVC_-_The_Editor.aspx"&gt;Telerik Extensions for ASP.NET MVC - The Editor&amp;nbsp;&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;In today's post I will talk about using Telerik Controls via&amp;nbsp;&lt;a href="http://nuget.org/"&gt;Nuget&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Let us create a new MVC3 application and as with any MVC3 project you get the new ASP.NET View Engine called&amp;nbsp;&lt;a href="http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx"&gt;Razor&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;So let us create a new MVC3 project with Razor view engine.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerik_mvc3dialogue.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_mvc3dialogue.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;We are going to add Telerik Extensions to our MVC3 project via Nuget.&lt;/p&gt; &lt;p&gt;Open up the Package Manager Console(View-&amp;gt;Other Windows-&amp;gt;Package Manager Console) and type this line in your PowerShell window&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;PM&amp;gt;&amp;nbsp;Install-Package&amp;nbsp;TelerikMvcExtensions.MVC3&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerik_packagemanagerconsole.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_packagemanagerconsole.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;TelerikMVCExtension.MVC3 is the name of the package you want to install.&lt;/p&gt; &lt;p&gt;Alternatively you can also right click on the webapplication and say Add Library Package Reference.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerik_librarypackagereference-(1).png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_librarypackagereference-(1).png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;By default you will see a list of packages that are installed in your project. To get Telerik Extensions for MVC3 Click Online and type Telerik in the search box&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerik_onlinesearch.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_onlinesearch.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;You can simply hit install button right next to the Package TelerikMVCExtension.MVC3.&lt;/p&gt; &lt;p&gt;Once you hit install you will see Telerik Scripts (Javascript files) and content(CSS and Image files) automatically added to your application.&lt;/p&gt; &lt;p&gt;Now all we need to do is add Styles and Register the Telrik Script Registrar in your _Layout.cshtml(Equivalent to masterpage).&lt;/p&gt; &lt;p&gt;For style links add the following line in the head section of your master page.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@(Html.Telerik().StyleSheetRegistrar()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.DefaultGroup(group&amp;nbsp;=&amp;gt;&amp;nbsp;group&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Add("telerik.common.css")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Add("telerik.hay.css")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Combined(true)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Compress(true))&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;For registering Telerik Scripts add the following line towards the end of your _Layout.cshtml page.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;@(Html.Telerik().ScriptRegistrar())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;That's it. Man doesn't NuGet make adding third party libraries to your application with such ease and awesomeness.?&lt;/p&gt; &lt;p&gt;You can now use telerik controls in your MVC3 application with the new Razor syntax.&lt;/p&gt; &lt;p&gt;Hope this helped.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;br /&gt; &lt;/div&gt;</description><pubDate>Fri, 04 Feb 2011 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">a2a6e53d-f7ce-4c4e-8371-b01262f991a8</guid><link>http://www.bluegenegeek.com/blog/2011/01/19/telerik-extensions-for-asp.net-mvc---the-editor</link><a10:author><a10:name> </a10:name></a10:author><category>Editor</category><category>Telerik Extensions</category><category>Telerik</category><title>Telerik Extensions for ASP.NET MVC - The Editor</title><description>&lt;p&gt;This is third in the series posts I am doing to cover Telerik Extensions for ASP.NET MVC.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-12-12/Getting_Started_with_Telerik_Extensions_for_ASP_NET_MVC.aspx"&gt;Getting Started with Telerik Extensions for ASP.NET MVC&amp;nbsp;&lt;br /&gt; &lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-12-19/Telerik_Extensions_for_ASP_NET_MVC_-_The_Grid.aspx"&gt;Telerik Extensions for ASP.NET MVC - The Grid&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;In today's post I will talk about using Telerik Extensions for ASP.NET - The Editor.&lt;/p&gt; &lt;p&gt;I will start with a ASP.NET MVC2 application which is already configured to run Telerik Extensions, if you have not already done that, I encourage you to read my first post on getting started(link above).&lt;/p&gt; &lt;p&gt;Let us create a new model for holding our data that we want to POST through the editor.&lt;/p&gt; &lt;p&gt;For this demo let us add a Person Class with two properties.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;class&amp;nbsp;Person&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;int&amp;nbsp;Id&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;string&amp;nbsp;Name&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;Person(int&amp;nbsp;id,&amp;nbsp;string&amp;nbsp;name)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Id&amp;nbsp;=&amp;nbsp;id;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Name&amp;nbsp;=&amp;nbsp;name;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Now let us add a ActionMethod with just returns a View, let the View be strongly typed to the Person Class we created above.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; public&amp;nbsp;ActionResult&amp;nbsp;CreatePerson()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;View();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;%@&amp;nbsp;Page&amp;nbsp;Title=""&amp;nbsp;Language="C#"&amp;nbsp;MasterPageFile="~/Views/Shared/Site.Master"&amp;nbsp;Inherits="System.Web.Mvc.ViewPage&amp;lt;TelerikEditor.Models.Person&amp;gt;"&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Adding a Telerik Editor is simple and it allows adding properties to the Editor with the help of a Fluent API like other Telerik MVC controls.&lt;/p&gt; &lt;p&gt;Let us look at basic markup needed to add the Editor.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;%&amp;nbsp;Html.Telerik().Editor().Name("PersonDescription")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;.Render();%&amp;gt;&amp;nbsp;&lt;br /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;If we run the application adding the basic markup for the editor, you should see the editor -&lt;/p&gt; &lt;p&gt;&lt;img width="450px" src="http://www.bluegenegeek.com/Libraries/Code_Pictures/Telerik_Editor.sflb.ashx" /&gt;&lt;/p&gt; &lt;p&gt;Let us look deeply into other properties that Editor offers&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;%&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Html.Telerik().EditorFor(model=&amp;gt;model.Name)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Name("PersonDescription")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.HtmlAttributes(new&amp;nbsp;{&amp;nbsp;style&amp;nbsp;=&amp;nbsp;"height:200px"&amp;nbsp;})&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Value("Please&amp;nbsp;enter&amp;nbsp;your&amp;nbsp;description&amp;nbsp;here")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Tools(tool&amp;nbsp;=&amp;gt;&amp;nbsp;tool&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Clear()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Bold()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Italic()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Underline()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Snippets(snippet=&amp;gt;snippet.Add("Greeting","&amp;lt;h1&amp;gt;Hello&amp;nbsp;World&amp;lt;/h1&amp;gt;")))&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Render();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Let us look in detail about each of these properties.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;EditorFor for strongly binding the property&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;EditorFor is variant of Editor for strongly typing model properties. It takes in the model property in the form of Func&amp;lt;T&amp;gt; you want to type to.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Name&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;The property "Name" is the actual clean HTML id of the table(textarea is wrapped inside aHTML table) that will be used for this editor. After you run the application do a View Source from your browser, you will see a div with the Id you mentioned in this Name property.&lt;/p&gt; &lt;img width="450px" src="http://www.bluegenegeek.com/Libraries/Code_Pictures/Telerik_Editor_HTML.sflb.ashx" /&gt; &lt;p&gt;&lt;strong&gt;HtmlAttributes&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This property takes in an object of HTML attributes you can apply to the editor.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This property is used to set the editor content, the value can be a plain string or a mix of HTML and plain text. If we add some HTML to the value like -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;.Value("&amp;lt;h1&amp;gt;Please&amp;nbsp;enter&amp;nbsp;your&amp;nbsp;description&amp;nbsp;here&amp;lt;/h1&amp;gt;")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt;
It will automatically be rendered when the editor loads.
&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;There are lots of tools that the editor supports - like Bold, Italic, Underline etc.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Clear()&lt;/em&gt;&amp;nbsp;- clears the current toolbar of the editor and every tool you add after calling clear will appear as in the toolbar.&lt;/p&gt; &lt;p&gt;&lt;em&gt;Snippets() -&lt;/em&gt;&amp;nbsp;Snippets lets you insert pre-configured HTML into the editor.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerik_snippet.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_snippet.png?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;ClientAPI&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;There is a very good client API for the editor that lets you do certain tasks using the editor. To dig more into these I recommend you read&amp;nbsp;&lt;a href="http://demos.telerik.com/aspnet-mvc/editor/clientsideapi"&gt;Telerk Editor Client API&lt;/a&gt;&amp;nbsp;documentation.&lt;/p&gt; &lt;p&gt;That's it for this post, in the next post I will be talking about how to use the Menu control.&lt;/p&gt; &lt;p&gt;Hope you found this useful.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Wed, 19 Jan 2011 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">05760f5f-0084-4370-a352-98198d2d1d58</guid><link>http://www.bluegenegeek.com/blog/2011/01/02/happy-new-year-2011</link><a10:author><a10:name> </a10:name></a10:author><category>New Years</category><category>2011</category><category>General</category><title>Happy New Year 2011</title><description>I wish you all a very Happy New Year 2011.
&lt;div&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/newyear2011.jpg?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/newyear2011.jpg?sfvrsn=0" width="500" /&gt;&lt;/a&gt;&amp;nbsp;&lt;br /&gt; &lt;/div&gt;</description><pubDate>Sun, 02 Jan 2011 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">eebabded-260d-44d5-b8dd-9211835da814</guid><link>http://www.bluegenegeek.com/blog/2010/12/29/2010---a-year-in-review</link><a10:author><a10:name> </a10:name></a10:author><category>Year Review</category><category>Year Review</category><title>2010 - A Year in review</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;This is that time of the year, where I have to look back at what I have achieved in the year. It is also that time of the year to make the next years resolutions.&lt;/p&gt; &lt;h3&gt;Looking back&lt;/h3&gt; &lt;p&gt;In 2010 I did a total of 25 blog posts (26 including this one), concentrating on ASP.NET MVC, ASP.NET, SQL Server and Windows Phone 7, which are main focus areas of my blog.&lt;/p&gt; &lt;p&gt;I have to admit that I didn't reach my initial goal of 40 blog posts this year when I started my blog. I also postponed building my own blog on MVC2 which I wanted to start early this year.&lt;/p&gt; &lt;p&gt;Looking at the bright side of things, I did learn new technologies like Silverlight for Windows Phone 7. 3 Of my articles were featured in&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/www.asp.net"&gt;www.asp.net&lt;/a&gt;&amp;nbsp;as the community articles of the day.&lt;/p&gt; &lt;p&gt;Here are the list of top 5 Blog posts that I did this year -&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-03-11/ASP_NET_MVC2_Client_Validation.aspx"&gt;ASP.NET MVC2 Client Validation&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-03-31/Using_ASP_NET_Charting_in_ASP_NET_MVC.aspx"&gt;Using ASP.NET Charting in ASP.NET MVC&amp;nbsp;&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://bluegenegeek.com/home/10-04-17/Sorting_Tabular_Data_in_ASP_NET_MVC.aspx"&gt;Sorting Tabular Data in ASP.NET MVC&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://bluegenegeek.com/home/10-08-30/Using_TinyMCE_Editor_with_ASP_NET_MVC.aspx"&gt;Using TinyMCE Editor with ASP.NET MVC&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://bluegenegeek.com/home/09-12-05/Using_Elmah_in_your_website.aspx"&gt;Using Elmah in your website&amp;nbsp;&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;And here is a list of 3 of my articles that were featured in asp.net community articles.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-03-11/ASP_NET_MVC2_Client_Validation.aspx"&gt;ASP.NET MVC2 Client Validation&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-03-31/Using_ASP_NET_Charting_in_ASP_NET_MVC.aspx"&gt;Using ASP.NET Charting in ASP.NET MVC&amp;nbsp;&lt;br /&gt; &lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-04-17/Sorting_Tabular_Data_in_ASP_NET_MVC.aspx"&gt;Sorting Tabular Data in ASP.NET MVC&amp;nbsp;&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt;
Apart from these I have started a series of blog posts covering how to build a Windows Phone 7 App and how to use Telerik Extensions for ASP.NET MVC.
&lt;p&gt;All in all it was a good year for me.&lt;/p&gt; &lt;h3&gt;What's next in 2011&lt;/h3&gt; &lt;p&gt;In 2011,&lt;/p&gt; &lt;ol&gt; &lt;li&gt;I would like to write at least 40 blog posts.&lt;/li&gt; &lt;li&gt;I would like to start building for Windows Phone 7 more.&lt;/li&gt; &lt;li&gt;I would like to contribute to one Open source project in some way.&lt;/li&gt; &lt;li&gt;I would like to migrate my blog to Sitefinity 4.0(given the difficult migration experience I had till now, I am not entirely sure how this one is going to go)&lt;/li&gt; &lt;li&gt;Also I would like to re-skin my blog to a more lively color templates.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Let us see how far I will get in my new year goals.&lt;/p&gt; &lt;p&gt;That's it for this year,&lt;/p&gt; &lt;p&gt;Have a great holiday everyone.&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Wed, 29 Dec 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">278dd405-6dff-46e9-9dba-510dcafb4935</guid><link>http://www.bluegenegeek.com/blog/2010/12/19/telerik-extensions-for-asp.net-mvc---the-grid</link><a10:author><a10:name> </a10:name></a10:author><category>Telerik Extensions</category><category>Grid</category><category>Telerik</category><title>Telerik Extensions for ASP.NET MVC - The Grid</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;This is second in the series posts I am doing to cover Telerik Extensions for ASP.NET MVC.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;a href="http://www.bluegenegeek.com/home/10-12-12/Getting_Started_with_Telerik_Extensions_for_ASP_NET_MVC.aspx"&gt;Getting Started with Telerik Extensions for ASP.NET MVC&amp;nbsp;&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;In today's post I will talk about using Telerik Extensions for ASP.NET - The Grid.&lt;/p&gt; &lt;p&gt;I will start with a ASP.NET MVC2 application which is already configured to run Telerik Extensions, if you have not already done that, I encourage you to read my first post on getting started(link above).&lt;/p&gt; &lt;p&gt;Add a Controller and create a method to return&amp;nbsp;&lt;strong&gt;IQueryable&amp;lt;YourObject&amp;gt;&lt;/strong&gt;. For sample code you can use something like this -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;class&amp;nbsp;AccessLevelController&amp;nbsp;:&amp;nbsp;Controller&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;readonly&amp;nbsp;AccessLevelRepository&amp;nbsp;repository&amp;nbsp;=&amp;nbsp;new&amp;nbsp;AccessLevelRepository();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ActionResult&amp;nbsp;Index()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IQueryable&amp;lt;AccessLevel&amp;gt;&amp;nbsp;accessLevelList&amp;nbsp;=&amp;nbsp;repository.GetAll().AsQueryable();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;View(accessLevelList);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Although it is not mandatory to return a IQueryable&amp;lt;&amp;gt;, Telerik's Grid's Linq Engine will take advantage of IQueryable&amp;lt;&amp;gt; to do sorting, filtering, grouping etc, the engine will fire the queries with the exact filter, sort clauses rather than bringing all the data and trying to filter,sort afterwards. This is a huge performance gain in most of the scenarios.&lt;/p&gt; &lt;p&gt;Now add a View for the Action Method Index, Strongly type the View to&amp;nbsp;&lt;strong&gt;AccessLevel&lt;/strong&gt;&amp;nbsp;(object I am getting the data for) and leave the view content Empty(we will define our List content using Telerik Grid rather than using the default ASP.NET MVC's List Content)&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerikgrid_addview.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Once you add the View change the Model of the view to be IQueryable&amp;lt;AccessLevel&amp;gt; which is what we returned from the Action Method.&lt;/p&gt; &lt;p&gt;This is how your View should like after changing the Model&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;%@&amp;nbsp;Page&amp;nbsp;Title=""&amp;nbsp;Language="C#"&amp;nbsp;MasterPageFile="~/Views/Shared/Site.Master"&amp;nbsp;Inherits="System.Web.Mvc.ViewPage&amp;lt;IQueryable&amp;lt;DomainModel.Database.AccessLevel&amp;gt;&amp;gt;"&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;asp:Content&amp;nbsp;ID="Content1"&amp;nbsp;ContentPlaceHolderID="TitleContent"&amp;nbsp;runat="server"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Index&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;/asp:Content&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;asp:Content&amp;nbsp;ID="Content2"&amp;nbsp;ContentPlaceHolderID="MainContent"&amp;nbsp;runat="server"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h2&amp;gt;Access&amp;nbsp;Level&amp;nbsp;List&amp;lt;/h2&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;lt;/asp:Content&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Now, let us add the Telerik Grid.&lt;/p&gt; &lt;p&gt;Use the below snippet to add Grid -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;%&amp;nbsp;Html.Telerik().Grid(Model)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Name("AccessLevelList")&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Columns(c&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o=&amp;gt;o.Access_Level_Id).Title("Access&amp;nbsp;Level&amp;nbsp;Id");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o&amp;nbsp;=&amp;gt;&amp;nbsp;o.Access_Level_Role).Title("Role&amp;nbsp;Name");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.PrefixUrlParameters(false)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Sortable()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Pageable()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Filterable()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Groupable()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Render();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;To test that we did everything correctly let us run the application and see if we see Telerik's Grid.(I will go over each property below).&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerikgrid_accesslevellist.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerikgrid_accesslevellist.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;If you see a grid which looks like the above image, Great! we are done configuring the Grid.&lt;/p&gt; &lt;p&gt;Now let us go over what each property in the above HTML means -&lt;/p&gt; &lt;p&gt;&lt;strong&gt;DataBinding using (Grid(Model))&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;There are few ways to bind the data to grid, the most easiest and convenient way being to pass the&lt;strong&gt;Model&lt;/strong&gt;&amp;nbsp;to&amp;nbsp; the grid directly. This model refers to IQueryable&amp;lt;AccessLevel&amp;gt;&amp;nbsp; which we made the Model of the View. Other ways to bind data are passing data using ViewData collection.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Name&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;The property "Name" is the actual clean HTML id of the div which wraps the table(grid translates to HTML table) that will be used for this list of data. After you run the application do a View Source from your browser, you will see a div with the Id you mentioned in this Name property.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/telerikgrid_htmlid.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerikgrid_htmlid.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;Columns&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Columns property defines the columns that will be on the grid, it allows the Lambda Syntax to define properties to each column. In the example we are making use of "Title" property for each column to define what the header text of the column will be.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;PrefixUrlParameters&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;The PrefixUrlParameters property will tell the Grid whether to prefix the grid name in URL while doing operations like Sorting and Filtering. For example if you run the application with PrefixUrlParameters(true) and sort on Role Name column this is how the URL would change to -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerikgrid_withprefixurl-(1).png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;See how AccessLevelList is added to the URL. This is useful if we have multiple Grid's on the same page, since for the sake of this demo I am using only one grid on the page, I will set PrefixUrlParameters(false) and sort on Role Name column to see how the URL would change to -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerikgrid_withoutprefix.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;See how AccesLevelList is no longer added in the URL.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Sortable&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Sortable property makes the grid Sortable, however this property can be turned off on a column by column basis using the Columns property for example if you wish to turn off sorting for AccessLevelId this is how you would do it.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;.Columns(c&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o=&amp;gt;o.Access_Level_Id).Title("Access&amp;nbsp;Level&amp;nbsp;Id").Sortable(false);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o&amp;nbsp;=&amp;gt;&amp;nbsp;o.Access_Level_Role).Title("Role&amp;nbsp;Name");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;Pageable&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Pageable property allowing paging for the grid.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Filterable&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Filterable property allows filtering in the grid, however this property can be turned off on a column by column basis using the Columns property for example if you wish to turn off filtering for AccessLevelId this is how you would do it.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;.Columns(c&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o=&amp;gt;o.Access_Level_Id).Title("Access&amp;nbsp;Level&amp;nbsp;Id").Filterable(false);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o&amp;nbsp;=&amp;gt;&amp;nbsp;o.Access_Level_Role).Title("Role&amp;nbsp;Name");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;Groupable&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Groupable property allows grouping of columns in the grid, however this property can be turned off on a column by column basis using the Columns property for example if you wish to turn off Grouping for AccessLevelId this is how you would do it.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;.Columns(c&amp;nbsp;=&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o=&amp;gt;o.Access_Level_Id).Title("Access&amp;nbsp;Level&amp;nbsp;Id").Groupable(false);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;c.Bound(o&amp;nbsp;=&amp;gt;&amp;nbsp;o.Access_Level_Role).Title("Role&amp;nbsp;Name");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;Render&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This property should be called to render any Telerik Extensions control.&lt;/p&gt; &lt;p&gt;That's it for this post, in the next post I will be talking about how to use the Editor control.&lt;/p&gt; &lt;p&gt;Hope you found this useful.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sun, 19 Dec 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">9d90d995-2a31-4ccf-8459-e70cda02bc63</guid><link>http://www.bluegenegeek.com/blog/2010/12/12/getting-started-with-telerik-extensions-for-asp.net-mvc</link><a10:author><a10:name> </a10:name></a10:author><category>Telerik Extensions</category><category>Getting Started</category><category>Telerik</category><title>Getting Started with Telerik Extensions for ASP.NET MVC</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt; &lt;p&gt;Telerik provides UI extensions to ASP.NET MVC, In this three part series I will&amp;nbsp; show how to get started with Telerik Extensions for ASP.NET MVC and how to use the Grid and Editor Controls. In this post I will walk through how to get started with these extensions.&lt;/p&gt; &lt;p&gt;To use Telerik Extensions for ASP.NET MVC go to&amp;nbsp;&lt;a href="http://www.telerik.com/products/aspnet-mvc.aspx"&gt;Telerik Extensions for ASP.NET MVC Page&lt;/a&gt;, and download the extensions, you will download a .ZIP, extract them and we are ready to add them to an application.&lt;/p&gt; &lt;p&gt;With the download you will get Binaries, Content, Scripts and some examples. We will need Binaries, Content and Scripts to start using the Extensions.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_download.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Create a new ASP.NET MVC 2.0 application. Open your Web.config file and look for "Pages" section of your web.config and under "namespaces" add a "Telerik.Web.Mvc.UI" namespace.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;add&amp;nbsp;namespace&amp;nbsp;="Telerik.Web.Mvc.UI"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Then add a reference to "Telerik.Web.Mvc", this DLL can be found under "Binaries" folder of your download.&lt;/p&gt; &lt;p&gt;Then go to "Scripts" folder of your download, typically you will find a Year, Month, Version folder at the time of this writing it is "2010.3.1110". Inside that folder you will find javascript files for various Telerik UI extensions.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_extensions_js.png?sfvrsn=0" /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Pick whatever controls you need and copy them to scripts folder of your ASP.NET MVC application. Please copy the folder the extensions where ("2010.3.1110" in this case) these Javascript files are found.&lt;/p&gt; &lt;p&gt;Once you copy the scripts, the scripts folder in your ASP.NET MVC application should look similar to (of course you could have copied more javascript files)&amp;nbsp; -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_mvc_scripts_folder.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;At the minimum you would need jquery min file and telerik.common.min.js file.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Then you need to copy the Content(Styles and images) for these controls.These are found under "Content" folder of your download. For this example I am going to use "Hay" theme.Copy the "Hay" folder and telerik.common.min.css and telerik.hay.min.css files to Content folder of your ASP.NET application, once you have done that your Content folder should look similar to -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/telerik_mvc_content_folder.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Now, open your Site.master file and add link references to these CSS files -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="/Content/Site.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="/Content/telerik.common.min.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="/Content/telerik.hay.min.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Now towards the bottom of the page, register the&amp;nbsp;&lt;strong&gt;Telerik Script Registrar,&amp;nbsp;&lt;/strong&gt;using this line -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &amp;lt;%&amp;nbsp;Html.Telerik().ScriptRegistrar().Render();&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;That's it you are now ready use Telerik UI Extensions. In the next post I will show you how to add "Grid" Control to your View page and how to do various operations with it.&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sun, 12 Dec 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">b6ea0d17-f489-4e7d-bd3e-e7b743d6c1a0</guid><link>http://www.bluegenegeek.com/blog/2010/11/23/json-request-behaviour-in-mvc2</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>MVC</category><title>Json Request Behaviour in MVC2</title><description>&lt;p&gt;If you are working with a MVC2 project, or happen to upgrade a MVC1 Project to a MVC2 Project you might run to some issues while getting Json data using AJAX calls.&lt;/p&gt; &lt;p&gt;Specifically MVC 2 will give you an error which says&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;This request has been blocked because sensitive information could be disclosed to third party web sites when this is used in a GET request. To allow GET requests, set JsonRequestBehavior to AllowGet.&lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;To get past this error all you need to do is Allow Json data to be gettable in your Controller Action method.&lt;/p&gt; &lt;p&gt;You can obtain this by the following line &amp;ndash;&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; return&amp;nbsp;Json(data,&amp;nbsp;JsonRequestBehavior.AllowGet);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;The above line will solve your problem.&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;br /&gt;</description><pubDate>Tue, 23 Nov 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">7aba2169-3b14-444e-9e3f-254c7d5c948c</guid><link>http://www.bluegenegeek.com/blog/2010/11/21/changing-you-application-title-in-windows-phone-7</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>Windows Phone 7</category><title>Changing you Application Title in Windows Phone 7</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl01_pnlPostContent"&gt; &lt;p&gt;This is another quick post in which I will show you how to change Application Title in Windows Phone 7 Application List.&lt;/p&gt; &lt;p&gt;Here is how the "Save the world Ninja!" app title is looking right now (If you haven't had a chance to read the post I did on how to create the Save the world Ninja! app I would suggest that you do&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/home/10-11-19/Building_Hello_World_Windows_Phone_7_App.aspx"&gt;here&lt;/a&gt;.)&lt;img src="http://www.bluegenegeek.com/images/default-album/apptitle_wp7.png?sfvrsn=0" /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Now I want to change this title to something more meaningful.&lt;/p&gt; &lt;p&gt;To change the title of your app in Windows Phone 7 App list, open up WMAppManifest.xml file in the properties folder of your Windows Phone 7 Project.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/wmappmanifest_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;In the WMAppManfiest.xml file you will find a node called "App" and change change that line to be something like this&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;App&amp;nbsp;xmlns=""&amp;nbsp;ProductID="{97a383c7-abb9-40ec-839d-0ac3aa168ccb}"&amp;nbsp;Title="Save&amp;nbsp;the&amp;nbsp;World,&amp;nbsp;Ninja!"&amp;nbsp;RuntimeType="Silverlight"&amp;nbsp;Version="1.0.0.0"&amp;nbsp;Genre="apps.normal"&amp;nbsp;&amp;nbsp;Author="Venkata&amp;nbsp;Koppaka"&amp;nbsp;Description="Save&amp;nbsp;your&amp;nbsp;world&amp;nbsp;Ninja!"&amp;nbsp;Publisher="Venkata&amp;nbsp;Koppaka"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Note the title in the above XML has been changed to "Save the World, Ninja!". I actually changed the Application icon the Windows Phone 7 App shows, here is how you would put your own&amp;nbsp; icon.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;IconPath&amp;nbsp;IsRelative="true"&amp;nbsp;IsResource="false"&amp;gt;ninja.png&amp;lt;/IconPath&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;And now if I run my App this is how it would look like -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/app_final_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;If you wish to checkout the updated code, its checked in to GitHub here -&lt;a href="https://github.com/subbaraokv/Hello-World---Windows-Phone-7"&gt;https://github.com/subbaraokv/Hello-World---Windows-Phone-7&lt;/a&gt;.&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sun, 21 Nov 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">d203c890-2781-4711-92ab-e61a83947524</guid><link>http://www.bluegenegeek.com/blog/2010/11/20/bringing-up-software-keyboard-in-windows-phone-7</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>Windows Phone 7</category><title>Bringing up Software Keyboard in Windows Phone 7</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;This post is short and quick one, in the previous post I created a Hello World Windows Phone 7 App. If you haven't read that already please do so&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/home/10-11-19/Building_Hello_World_Windows_Phone_7_App.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;In this post I will just add a small functionality to the app. I wanted the software keyboard on the Windows Phone 7 device to come up as soon as the App loads.&lt;/p&gt; &lt;p&gt;Generally the software keyboard in Windows Phone 7 automatically pops up whenever a textbox control has a focus on the phone, but I since my Ninja App only had one textbox it makes sense to automatically bring up the software keyboard as soon as the app loads so the user can start typing in right away.&lt;/p&gt; &lt;p&gt;Here is how you would do it. There is a "PhoneApplicationPage_Loaded" event that gets fired on the app load.&lt;/p&gt; &lt;p&gt;So all you have to do is to set the focus on a textbox in the loaded event and the software keyboard will automatically showup.&amp;nbsp;&lt;/p&gt; &lt;p&gt;Here is the code sample for doing so -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; private&amp;nbsp;void&amp;nbsp;PhoneApplicationPage_Loaded(object&amp;nbsp;sender,&amp;nbsp;RoutedEventArgs&amp;nbsp;e)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tbNinjaPhrase.Focus();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt;
That's it.
&lt;p&gt;If you wish to checkout the updated code, its checked in to GitHub here -&lt;a href="https://github.com/subbaraokv/Hello-World---Windows-Phone-7"&gt;https://github.com/subbaraokv/Hello-World---Windows-Phone-7&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Sat, 20 Nov 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">f90852f2-1c1a-4fea-a8c4-8ed6ef206a84</guid><link>http://www.bluegenegeek.com/blog/2010/11/19/building-hello-world!-windows-phone-7-app</link><a10:author><a10:name> </a10:name></a10:author><category>snippet</category><category>Hello world</category><category>Windows Phone 7</category><title>Building Hello World! Windows Phone 7 App</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;In this post I will walk you through on how to build a Hello World Windows Phone 7 App. The "Hello World" app that I am building in this tutorial is a "Save the World" app in which if you enter a correct pass phrase you will save the world for you :), if not you cannot save the world :P&lt;/p&gt; &lt;p&gt;To get started you will need Windows Phone 7 Developer Tools, you can download them&amp;nbsp;&lt;a href="http://create.msdn.com/en-US/"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Once you download and install Windows Phone 7 Developer Tools, Create a Windows Phone Application.&lt;/p&gt; &lt;p&gt;You will be presented with a dialog which would look like this -&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/createnew_wp7.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/createnew_wp7.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;The first thing I did after creating the app is to rename Application Title and Page Title. Here is what I renamed them to&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;StackPanel&amp;nbsp;x:Name="TitlePanel"&amp;nbsp;Grid.Row="0"&amp;nbsp;Margin="12,17,0,28"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;TextBlock&amp;nbsp;x:Name="ApplicationTitle"&amp;nbsp;Text="My&amp;nbsp;Ninja&amp;nbsp;App"&amp;nbsp;Style="{StaticResource&amp;nbsp;PhoneTextNormalStyle}"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;TextBlock&amp;nbsp;x:Name="PageTitle"&amp;nbsp;Text="Save&amp;nbsp;the&amp;nbsp;world"&amp;nbsp;Margin="9,-7,0,0"&amp;nbsp;Style="{StaticResource&amp;nbsp;PhoneTextTitle1Style}"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/StackPanel&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;And this is what the Phone Emulator looked after I renamed -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/title_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;I will now drag couple of textblocks, a textbox and a button on to the Phone designer and then rename them to something which makes more sense, here is the XAML -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;TextBox&amp;nbsp;Height="72"&amp;nbsp;HorizontalAlignment="Left"&amp;nbsp;Margin="12,116,0,0"&amp;nbsp;Name="tbNinjaPhrase"&amp;nbsp;Text=""&amp;nbsp;VerticalAlignment="Top"&amp;nbsp;Width="460"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;TextBlock&amp;nbsp;Height="79"&amp;nbsp;HorizontalAlignment="Left"&amp;nbsp;Margin="25,31,0,0"&amp;nbsp;Name="textBlock1"&amp;nbsp;Text="What&amp;nbsp;is&amp;nbsp;your&amp;nbsp;Ninja&amp;nbsp;pass&amp;nbsp;phrase&amp;nbsp;to&amp;nbsp;save&amp;nbsp;the&amp;nbsp;world?"&amp;nbsp;VerticalAlignment="Top"&amp;nbsp;Width="425"&amp;nbsp;TextWrapping="Wrap"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Button&amp;nbsp;Content="Save&amp;nbsp;the&amp;nbsp;World!"&amp;nbsp;Height="69"&amp;nbsp;HorizontalAlignment="Left"&amp;nbsp;Margin="109,194,0,0"&amp;nbsp;Name="btnSaveTheWorld"&amp;nbsp;VerticalAlignment="Top"&amp;nbsp;Width="249"&amp;nbsp;Click="btnSaveTheWorld_Click"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;TextBlock&amp;nbsp;Height="114"&amp;nbsp;HorizontalAlignment="Left"&amp;nbsp;Margin="25,269,0,0"&amp;nbsp;Name="messageBlock"&amp;nbsp;Text=""&amp;nbsp;VerticalAlignment="Top"&amp;nbsp;Width="425"&amp;nbsp;TextWrapping="Wrap"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;and this is how the phone UI will look like after dragging all the UI elements -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/phoneui_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Then I double click on button and put in this code in the code behind -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; private&amp;nbsp;void&amp;nbsp;btnSaveTheWorld_Click(object&amp;nbsp;sender,&amp;nbsp;RoutedEventArgs&amp;nbsp;e)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string&amp;nbsp;ninjaPhrase&amp;nbsp;=&amp;nbsp;tbNinjaPhrase.Text;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!string.IsNullOrEmpty(ninjaPhrase))&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(string.Compare("startrek",&amp;nbsp;ninjaPhrase,&amp;nbsp;StringComparison.OrdinalIgnoreCase)&amp;nbsp;==&amp;nbsp;0)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;messageBlock.Text&amp;nbsp;=&amp;nbsp;"Vola!&amp;nbsp;Way&amp;nbsp;to&amp;nbsp;go&amp;nbsp;Ninja,&amp;nbsp;You&amp;nbsp;saved&amp;nbsp;the&amp;nbsp;world!";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;messageBlock.Text&amp;nbsp;=&amp;nbsp;"That&amp;nbsp;is&amp;nbsp;not&amp;nbsp;a&amp;nbsp;Ninja&amp;nbsp;Phrase!&amp;nbsp;You&amp;nbsp;cannot&amp;nbsp;save&amp;nbsp;the&amp;nbsp;world!";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;messageBlock.Text&amp;nbsp;=&amp;nbsp;"Are&amp;nbsp;you&amp;nbsp;kidding?&amp;nbsp;That&amp;nbsp;is&amp;nbsp;not&amp;nbsp;a&amp;nbsp;Ninja&amp;nbsp;Phrase!&amp;nbsp;You&amp;nbsp;cannot&amp;nbsp;save&amp;nbsp;the&amp;nbsp;world!";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt;
I run the App and vola!,
&lt;p&gt;Here is what you would see when you put it "stratrek" as pass code :)&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/correctpasscode_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;And if you put in some other pass phrase you would see "You didn't save the world" :)&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/wrongpasscode_wp7.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;And that is your first Hello World Windows Phone 7 App.&lt;/p&gt; &lt;p&gt;If you wish to checkout the code here is the code on GitHub&amp;nbsp;&lt;a href="https://github.com/subbaraokv/Hello-World---Windows-Phone-7"&gt;https://github.com/subbaraokv/Hello-World---Windows-Phone-7&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Fri, 19 Nov 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">4de58a02-e35b-4a65-8076-2b16aec0ab69</guid><link>http://www.bluegenegeek.com/blog/2010/10/28/peforming-crud-with-linq-to-sql</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>CRUD</category><category>C#</category><category>LINQ</category><title>Peforming CRUD with LINQ to SQL</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt; &lt;p&gt;LINQ to SQL is an ORM(Object-relational mapping) tool introduced by Microsoft.&lt;/p&gt; &lt;p&gt;In this post I will walk through how to perform basic CRUD(Create, Retrieve, Update, Delete) operations using LINQ to SQL.&lt;/p&gt; &lt;p&gt;&lt;em&gt;(NOTE: This post assumes you have basic knowledge of using LINQ to SQL like adding the DBML class and dragging tables on to a DBML designer)&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Lets get started -&lt;/p&gt; &lt;p&gt;The table we are going use for this example is a simple Person Table. Here is the schema for the table -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/personschema.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Create&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;To perform a Create operation on a table using LINQ to SQL you need to create an instance of the class and populate the data into the instance. Once you are done call "InsertOnSubmit" and "SaveChanges" to insert the object.&lt;/p&gt; &lt;p&gt;Here is the code sample for doing so -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;(var&amp;nbsp;context&amp;nbsp;=&amp;nbsp;new&amp;nbsp;TestDbDataContext())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Person&amp;nbsp;aPersonToInsert&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Person();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aPersonToInsert.Name&amp;nbsp;=&amp;nbsp;"Test&amp;nbsp;User";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aPersonToInsert.Age&amp;nbsp;=&amp;nbsp;26;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aPersonToInsert.Email&amp;nbsp;=&amp;nbsp;"test@test.com";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.Persons.InsertOnSubmit(aPersonToInsert);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.SubmitChanges();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;The above code will insert the object only after context.SubmitChanges() is called.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Retrieve&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;To perform a retrieve from a table using you can use one of the two syntax. The first one is a normal LINQ syntax which reads more like plain SQL. The second syntax is called "Lamda" syntax which is just a more convenient way to create a delegate.&lt;/p&gt; &lt;p&gt;Here are the code samples for doing both.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;(var&amp;nbsp;context&amp;nbsp;=&amp;nbsp;new&amp;nbsp;TestDbDataContext())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Normal&amp;nbsp;Syntax&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Person&amp;nbsp;person&amp;nbsp;=&amp;nbsp;(from&amp;nbsp;aPerson&amp;nbsp;in&amp;nbsp;context.Persons&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;where&amp;nbsp;aPerson.PersonId&amp;nbsp;==&amp;nbsp;1&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select&amp;nbsp;aPerson).SingleOrDefault();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Lambda&amp;nbsp;Syntax&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Person&amp;nbsp;personLamda&amp;nbsp;=&amp;nbsp;context.Persons.SingleOrDefault(p&amp;nbsp;=&amp;gt;&amp;nbsp;p.PersonId&amp;nbsp;==&amp;nbsp;1);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;The SingleOrDefault() method above gets a single entity that matches the criteria or returns NULL if nothing is found.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;To perform a Update on a database record using LINQ to SQL, you have to get the record using one of the two syntax shown above and make changes to record and then Submit the changes to the database using SubmitChanges().&lt;/p&gt; &lt;p&gt;Here is the code sample for doing so -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;(var&amp;nbsp;context&amp;nbsp;=&amp;nbsp;new&amp;nbsp;TestDbDataContext())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Lambda&amp;nbsp;Syntax&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Person&amp;nbsp;person&amp;nbsp;=&amp;nbsp;context.Persons.SingleOrDefault(p&amp;nbsp;=&amp;gt;&amp;nbsp;p.PersonId&amp;nbsp;==&amp;nbsp;1);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;person.Name&amp;nbsp;=&amp;nbsp;"Updated&amp;nbsp;User";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;person.Age&amp;nbsp;=&amp;nbsp;99;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;person.Email&amp;nbsp;=&amp;nbsp;"noone@someone.com";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.SubmitChanges();&amp;nbsp;//this&amp;nbsp;will&amp;nbsp;save&amp;nbsp;your&amp;nbsp;changes&amp;nbsp;to&amp;nbsp;the&amp;nbsp;database&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Again please note unless you call SubmitChanges() none of your changes are saved to the database.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Delete&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;Delete operation using LINQ to SQL is similar to Update operation. You have to get the record, delete the record and Submit the changes to the database using SubmitChanges().&lt;/p&gt; &lt;p&gt;Here is the code for doing so -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;(var&amp;nbsp;context&amp;nbsp;=&amp;nbsp;new&amp;nbsp;TestDbDataContext())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Lambda&amp;nbsp;Syntax&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Person&amp;nbsp;person&amp;nbsp;=&amp;nbsp;context.Persons.SingleOrDefault(p&amp;nbsp;=&amp;gt;&amp;nbsp;p.PersonId&amp;nbsp;==&amp;nbsp;1);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.Persons.DeleteOnSubmit(person);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.SubmitChanges();&amp;nbsp;//this&amp;nbsp;will&amp;nbsp;save&amp;nbsp;your&amp;nbsp;changes&amp;nbsp;to&amp;nbsp;the&amp;nbsp;database&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Again unless you call SubmitChanges() nothing is deleted from the database.&lt;/p&gt; &lt;p&gt;So we are done performing a simple CRUD operations using LINQ to SQL.&lt;/p&gt; &lt;p&gt;Hope you find it useful,&lt;/p&gt; &lt;p&gt;&amp;nbsp;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Thu, 28 Oct 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">29e2bb21-29ae-4568-861c-007403858440</guid><link>http://www.bluegenegeek.com/blog/2010/10/24/how-to-add-twitter-stream-to-your-asp.net-mvc-website</link><a10:author><a10:name> </a10:name></a10:author><category>twitter</category><category>MVC</category><title>How to add Twitter Stream to your ASP.NET MVC Website</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl05_pnlPostContent"&gt; &lt;p&gt;This post will walk you through how to add twitter stream to your ASP.NET MVC Website.&lt;/p&gt; &lt;p&gt;First go to&amp;nbsp;&amp;nbsp;&lt;a href="http://twitter.com/widgets"&gt;http://twitter.com/widgets&lt;/a&gt;, then in left side bar under "Widgets for..." select "My Website"&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/mywebsite.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/mywebsite.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;From the widgets page, choose "Profile Widget" -&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/profilewidget.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/profilewidget.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;You should end up in a "Customize your Profile Widget" page -&lt;/p&gt; &lt;ol&gt; &lt;li&gt;In the settings tab enter your twitter username.&lt;/li&gt; &lt;li&gt;In the preferences tab choose your preferences ideally the number of tweets can be adjusted here.&lt;/li&gt; &lt;li&gt;From the Appearance tab choose the colors of your widget.&lt;/li&gt; &lt;li&gt;From the Dimensions tab choose your Dimensions of the widget.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Once you are done, hit finish and grab code.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/finishwidget.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/finishwidget.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;Copy the script in the textbox.&lt;/p&gt; &lt;p&gt;Now to integrate it to your ASP.NET MVC Website, Add new MVC Partial View and paste the code from the above step in to your partial view.&lt;/p&gt; &lt;p&gt;Then simply call Html.RenderPartial and render the Partial View where ever you want.&lt;/p&gt; &lt;p&gt;Hope this helped,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sun, 24 Oct 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">f347099e-4592-4bdb-9252-4b84a913c2b2</guid><link>http://www.bluegenegeek.com/blog/2010/09/23/preventing-caching-in-jquery-ajax-requests</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>ASP.NET</category><category>JQuery</category><title>Preventing Caching in JQuery Ajax requests</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl01_pnlPostContent"&gt;To prevent Caching of results while making JQuery Ajax requests use the following code -
&lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;type="text/javascript"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(function()&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$.ajaxSetup({&amp;nbsp;cache:&amp;nbsp;false&amp;nbsp;});&amp;nbsp;//&amp;nbsp;prevent&amp;nbsp;caching&amp;nbsp;of&amp;nbsp;get&amp;nbsp;requests&amp;nbsp;(needed&amp;nbsp;for&amp;nbsp;IE).&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;If you use the above script, whenever you make a JQuery ajax request it will auto-add a unique URL parameter to the requestedy url and hence the cached results wont be returned.&lt;/p&gt; &lt;p&gt;Here is how a JQuery GET request would look like without cache : false&lt;/p&gt; &lt;a href="http://www.bluegenegeek.com/images/default-album/beforecache-(2).png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/beforecache-(2).png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p&gt;Here is how JQuery GET request would look like with cache : false.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/afternocache.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/afternocache.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Thu, 23 Sep 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">65ef9beb-5b0d-4d2e-bdab-d067d9f91749</guid><link>http://www.bluegenegeek.com/blog/2010/08/30/using-tinymce-editor-with-asp.net-mvc</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>tinymce</category><category>MVC</category><title>Using TinyMCE Editor with ASP.NET MVC</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;In this post I will walk through on how to get TinyMCE editor, one of the best WYSIWYG (&lt;em&gt;&lt;strong&gt;W&lt;/strong&gt;hat&amp;nbsp;&lt;strong&gt;Y&lt;/strong&gt;ou&lt;strong&gt;S&lt;/strong&gt;ee&amp;nbsp;&lt;strong&gt;I&lt;/strong&gt;s&amp;nbsp;&lt;strong&gt;W&lt;/strong&gt;hat&amp;nbsp;&lt;strong&gt;Y&lt;/strong&gt;ou&amp;nbsp;&lt;strong&gt;G&lt;/strong&gt;et&lt;/em&gt;) editors, to work in a ASP.NET MVC application&lt;/p&gt; &lt;p&gt;Go to TinyMce website and download the latest Main Package, at the time of writing it is version 3.3.8. Here is a link for direct download&amp;nbsp; -&amp;nbsp;&lt;a href="https://sourceforge.net/projects/tinymce/files/TinyMCE/3.3.8/tinymce_3_3_8.zip/download"&gt;Click to Download&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I will use a ASP.NET MVC2 App to demonstrate TinyMCE.&lt;/p&gt; &lt;p&gt;Create a New ASP.NET MVC2 Web Application. Unzip the contents of&amp;nbsp;&lt;strong&gt;JScripts&amp;nbsp;&lt;/strong&gt;folder in TinyMCE zip folder that you downloaded earlier to say /Scripts/Tiny_Mce/&lt;/p&gt; &lt;p&gt;After you unzip the contents of JScripts folder to your application, your Scripts folder should look something similar to this -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/tinymce_scripts.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;Include a Script reference of TinyMCE javascript file in your view where you want to use the TinyMCE Editor -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;script&amp;nbsp;src="/Scripts/tiny_mce/tiny_mce.js"&amp;nbsp;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Then copy the following javascript in to your view to initialize TinyMCE -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;script&amp;nbsp;type="text/javascript"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tinyMCE.init({&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;General&amp;nbsp;options&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;mode:&amp;nbsp;"textareas",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme:&amp;nbsp;"advanced",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plugins:&amp;nbsp;"safari,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,imagemanager,filemanager",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Theme&amp;nbsp;options&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_buttons1:&amp;nbsp;"save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_buttons2:&amp;nbsp;"cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_buttons3:&amp;nbsp;"tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_buttons4:&amp;nbsp;"insertlayer,moveforward,movebackward,absolute,|,styleprops,spellchecker,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_toolbar_location:&amp;nbsp;"top",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_toolbar_align:&amp;nbsp;"left",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_statusbar_location:&amp;nbsp;"bottom",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theme_advanced_resizing:&amp;nbsp;true,&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Example&amp;nbsp;content&amp;nbsp;CSS&amp;nbsp;(should&amp;nbsp;be&amp;nbsp;your&amp;nbsp;site&amp;nbsp;CSS)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;content_css:&amp;nbsp;"css/example.css",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Drop&amp;nbsp;lists&amp;nbsp;for&amp;nbsp;link/image/media/template&amp;nbsp;dialogs&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;template_external_list_url:&amp;nbsp;"js/template_list.js",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;external_link_list_url:&amp;nbsp;"js/link_list.js",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;external_image_list_url:&amp;nbsp;"js/image_list.js",&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;media_external_list_url:&amp;nbsp;"js/media_list.js"&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;You would need a TextArea HTML Control to view TinyMCE editor. Use the following code to add a TextArea to your view.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;form&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;textarea&amp;nbsp;name="tinyMCEContent"&amp;nbsp;style="width:&amp;nbsp;100%"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/textarea&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/form&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Run the application, and you should see the TinyMCE Editor like this -&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/tinymce_image.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/tinymce_image.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Mon, 30 Aug 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">9debde90-0753-4335-8412-6234398ff475</guid><link>http://www.bluegenegeek.com/blog/2010/08/16/shrinking-database-log-file</link><a10:author><a10:name> </a10:name></a10:author><category>Shrink Database</category><category>SQL</category><title>Shrinking Database Log file</title><description>To just shrink the size of a database log file, use the following code:&lt;br /&gt;
&amp;nbsp;&lt;br /&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;backup&amp;nbsp;log&amp;nbsp;database_name&amp;nbsp;with&amp;nbsp;truncate_only&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;dbcc&amp;nbsp;shrinkfile&amp;nbsp;(database_log_name)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;GO&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
The backup log statement marks all of the transactions listed in the log Inactive, and then the dbcc shrinkfile command will remove the Inactive transactions from the file, thereby shrinking the size of the database.&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
If the database_log_name is unknown, you can also use the File_ID instead of the name, and that can be found by using:&lt;br /&gt;
&amp;nbsp;&lt;br /&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; select&amp;nbsp;*&amp;nbsp;from&amp;nbsp;sysfiles&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
when you are in the desired database that you want to delete the log from.&lt;br /&gt;
&amp;nbsp;&lt;br /&gt; &lt;p&gt;There is a shrink database command called dbcc shrinkdatabase (database_name) that takes a database name as an input and will attempt to shrink the size of the database files in the same manor as described above. &amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;br /&gt;</description><pubDate>Mon, 16 Aug 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">fff1e6ed-86e8-489f-84ae-3b19b871418f</guid><link>http://www.bluegenegeek.com/blog/2010/07/02/grey-out-submit-button-after-click---asp.net</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>ASP.NET</category><title>Grey out Submit button after click - ASP.NET</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt; &lt;p&gt;This post is small snippet I had to come up with to grey out the submit button after clicking it so the user doesn't click it twice.&lt;/p&gt; &lt;p&gt;I am using a post in asp.net forums&amp;nbsp;&lt;a href="http://forums.asp.net/p/1057086/1868122.aspx"&gt;http://forums.asp.net/p/1057086/1868122.aspx&lt;/a&gt;&amp;nbsp;as reference.&lt;/p&gt; &lt;p&gt;The version I am writing here is tailored down version of what the forums website discusses.&lt;/p&gt; &lt;p&gt;Here is the C# Utility method that generates a script.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;nbsp;&amp;lt;summary&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;Generates&amp;nbsp;auto-disable&amp;nbsp;butotn&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;lt;/summary&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;lt;param&amp;nbsp;name="p"&amp;gt;Page&amp;nbsp;Instance&amp;lt;/param&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;lt;param&amp;nbsp;name="btn"&amp;gt;Button&amp;nbsp;Instance&amp;lt;/param&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;lt;param&amp;nbsp;name="disabledText"&amp;gt;Text&amp;nbsp;to&amp;nbsp;display&amp;nbsp;on&amp;nbsp;button&amp;nbsp;when&amp;nbsp;clicked&amp;lt;/param&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;///&amp;nbsp;&amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;static&amp;nbsp;string&amp;nbsp;GetLockButtonJscript(Page&amp;nbsp;p,&amp;nbsp;Button&amp;nbsp;btn,&amp;nbsp;string&amp;nbsp;disabledText)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;disabledText&amp;nbsp;=&amp;nbsp;disabledText&amp;nbsp;==&amp;nbsp;""&amp;nbsp;?&amp;nbsp;"Processing..."&amp;nbsp;:&amp;nbsp;disabledText;&amp;nbsp;disabledText&amp;nbsp;=&amp;nbsp;disabledText.Replace("'",&amp;nbsp;"");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StringBuilder&amp;nbsp;sb&amp;nbsp;=&amp;nbsp;new&amp;nbsp;StringBuilder();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(btn.CausesValidation&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;p.Validators.Count&amp;nbsp;&amp;gt;&amp;nbsp;0&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;btn&amp;nbsp;!=&amp;nbsp;null)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sb.Append("if&amp;nbsp;(typeof(Page_ClientValidate)&amp;nbsp;==&amp;nbsp;'function')&amp;nbsp;{&amp;nbsp;");&amp;nbsp;sb.Append("if&amp;nbsp;(Page_ClientValidate('"&amp;nbsp;+&amp;nbsp;btn.ValidationGroup&amp;nbsp;+&amp;nbsp;"')&amp;nbsp;==&amp;nbsp;false)&amp;nbsp;{&amp;nbsp;return&amp;nbsp;false;&amp;nbsp;}}&amp;nbsp;");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PostBackOptions&amp;nbsp;opt&amp;nbsp;=&amp;nbsp;new&amp;nbsp;PostBackOptions(btn,&amp;nbsp;"",&amp;nbsp;"",&amp;nbsp;false,&amp;nbsp;true,&amp;nbsp;true,&amp;nbsp;true,&amp;nbsp;true,&amp;nbsp;btn.ValidationGroup);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sb.Append(p.ClientScript.GetPostBackEventReference(opt));&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sb.Append(";");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sb.Append("this.disabled='true';this.value='"&amp;nbsp;+&amp;nbsp;disabledText&amp;nbsp;+&amp;nbsp;"';");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;sb.ToString();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;To use this method in a .aspx file and disable a button just include this line of code in the Page_Load event -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;protected&amp;nbsp;void&amp;nbsp;Page_Load(object&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;btnSubmit.Attributes.Add("onclick",&amp;nbsp;GetLockButtonJscript(this.Page,&amp;nbsp;btnSubmit,&amp;nbsp;"Processing..."));&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Hope this Helps,&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Fri, 02 Jul 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">f5feae7f-fad3-45e1-8dc9-a85f6cae1102</guid><link>http://www.bluegenegeek.com/blog/2010/06/05/sorting-tabular-data-in-asp.net</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>ASP.NET</category><title>Sorting Tabular Data in ASP.NET</title><description>&lt;p&gt;In this post I will talk about how to build tabular data using ADO.NET EntityFramework and sort tabular / grid data using JQuery table sorter plugin. For the sake of demo I will use ASP.NET 4 and .NET Framework 4.&lt;/p&gt; &lt;p&gt;Fire up Visual Studio 2010 and Create a New ASP.NET WebSite. For this demo I will use ADO.NET Entity Framework to get a list of Products from the database.&lt;/p&gt; &lt;p&gt;I will use AdventureWorks Database for the sake of this demo.&lt;/p&gt; &lt;p&gt;Add a new ADO.NET Entity Data Model, select &amp;ldquo;generate from database&amp;rdquo;, hit next choose the and add the product&amp;rsquo;s table&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/products.png?sfvrsn=0" width="500px" /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Add a new C# Class and class it Product.cs this class will be in the same namespace as the EntityDataModel and the Product class will extend as a partial class from the class created by ADO.NET EntityFramework. Here is how the class should look like &amp;ndash;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; using&amp;nbsp;System;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;System.Collections.Generic;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;System.Linq;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;using&amp;nbsp;System.Web;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;///&amp;nbsp;&amp;lt;summary&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;///&amp;nbsp;Summary&amp;nbsp;description&amp;nbsp;for&amp;nbsp;Product&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;///&amp;nbsp;&amp;lt;/summary&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;///&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;namespace&amp;nbsp;AdventureWorksModel&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;partial&amp;nbsp;class&amp;nbsp;Product&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;IQueryable&amp;lt;Product&amp;gt;&amp;nbsp;GetProducts()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AdventureWorksEntities&amp;nbsp;db&amp;nbsp;=&amp;nbsp;new&amp;nbsp;AdventureWorksEntities();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;db.Products.Take(200);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;We created a method called GetProducts which just takes the top 200 rows in from the Products table. This method will return a List of Products of type IQueryable.&lt;/p&gt; &lt;p&gt;Now add a new ASP.NET WebForm and call it Products.aspx. In Products.aspx drag drop a GridView and set its DataSource as ObjectDataSource, in the GridView tasks choose new DataSource and Choose object as Data Source Type,&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/datasource.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/datasource.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;From the choose a Business Object Screen Choose the Products Class we just created.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/bo.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/bo.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;For the select method Choose the GetProducts method we created earlier.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/datamethods.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/datamethods.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/gridviewtasks.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/gridviewtasks.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Choose the necessary columns from the gridview, I choose a few columns for this demo. Once you are done with choosing columns your Products.aspx code should look something like this &amp;ndash;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:GridView&amp;nbsp;ID="gdvProducts"&amp;nbsp;runat="server"&amp;nbsp;AutoGenerateColumns="False"&amp;nbsp;DataSourceID="ObjectDataSource1"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;Columns&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="ProductID"&amp;nbsp;HeaderText="ProductID"&amp;nbsp;SortExpression="ProductID"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="Name"&amp;nbsp;HeaderText="Name"&amp;nbsp;SortExpression="Name"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="ProductNumber"&amp;nbsp;HeaderText="ProductNumber"&amp;nbsp;SortExpression="ProductNumber"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:CheckBoxField&amp;nbsp;DataField="MakeFlag"&amp;nbsp;HeaderText="MakeFlag"&amp;nbsp;SortExpression="MakeFlag"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:CheckBoxField&amp;nbsp;DataField="FinishedGoodsFlag"&amp;nbsp;HeaderText="FinishedGoodsFlag"&amp;nbsp;SortExpression="FinishedGoodsFlag"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="Color"&amp;nbsp;HeaderText="Color"&amp;nbsp;SortExpression="Color"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="SafetyStockLevel"&amp;nbsp;HeaderText="SafetyStockLevel"&amp;nbsp;SortExpression="SafetyStockLevel"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="ReorderPoint"&amp;nbsp;HeaderText="ReorderPoint"&amp;nbsp;SortExpression="ReorderPoint"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="StandardCost"&amp;nbsp;HeaderText="StandardCost"&amp;nbsp;SortExpression="StandardCost"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:BoundField&amp;nbsp;DataField="ListPrice"&amp;nbsp;HeaderText="ListPrice"&amp;nbsp;SortExpression="ListPrice"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/Columns&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/asp:GridView&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:ObjectDataSource&amp;nbsp;ID="ObjectDataSource1"&amp;nbsp;runat="server"&amp;nbsp;SelectMethod="GetProducts"&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TypeName="AdventureWorksModel.Product"&amp;gt;&amp;lt;/asp:ObjectDataSource&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Run the application and this is how your products list will show up.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/initialapp.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/initialapp.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Download JQuery 1.4.1 and tablesorter plugins and them to the scripts folder of the website. Once done add these scripts to the head section of master page.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="~/Content/tablsorter.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;src="Scripts/jquery-1.4.1.js"&amp;nbsp;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;src="Scripts/jquery.tablesorter.js"&amp;nbsp;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;In the HTML for gridview now let&amp;rsquo;s add a CSS class so that we can use it find the table by JQuery.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;asp:GridView&amp;nbsp;ID="gdvProducts"&amp;nbsp;runat="server"&amp;nbsp;AutoGenerateColumns="False"&amp;nbsp;DataSourceID="ObjectDataSource1"&amp;nbsp;CssClass="tablesorter"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt;
&amp;nbsp;
&lt;p&gt;Note the CssClass Property above which is set to tablesorter.&lt;/p&gt; &lt;p&gt;Now add the following script in the products.aspx page &amp;ndash;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;type="text/javascript"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(document).ready(function&amp;nbsp;()&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$('.tablesorter').tablesorter();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;Run the application. Your application should be something similar to this &amp;ndash;&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/images/default-album/appwithsorting.png?sfvrsn=0"&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/appwithsorting.png?sfvrsn=0" width="500px" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Notice the sort up and sort down arrows.&lt;/p&gt; &lt;p&gt;Hope this helps.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sat, 05 Jun 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">1fb910a8-b2b2-4e03-9611-9dd85053fcfd</guid><link>http://www.bluegenegeek.com/blog/2010/05/04/test-technorati-claim</link><a10:author><a10:name> </a10:name></a10:author><title>Test Technorati Claim</title><description>Test&lt;br /&gt;</description><pubDate>Tue, 04 May 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">b6f2ada1-744e-455b-ab3b-b37e8ae49118</guid><link>http://www.bluegenegeek.com/blog/2010/04/19/creating-a-printer-friendly-asp.net-page</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>ASP.NET</category><title>Creating a Printer Friendly ASP.NET Page</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;This post is a quick snippet of code to create a Printer Friendly version of any ASP.NET page.&lt;/p&gt; &lt;p&gt;Create a DIV which holds the content of your ASP.NET Page , so enclose the entire content that you want to print inside a div -&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;div&amp;nbsp;id="ContentDiv"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PUT&amp;nbsp;ALL&amp;nbsp;OF&amp;nbsp;YOUR&amp;nbsp;CONTENT&amp;nbsp;HERE&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Then create a Hyperlink for the user to click, to get to the print friendly page&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;a&amp;nbsp;href="#"&amp;nbsp;onclick="JavaScript:PrintPage('ContentDiv')"&amp;gt;Printer&amp;nbsp;Friendly&amp;nbsp;Page&amp;lt;/a&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Include this JavaScript Function in your page for printing the webpage&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;script&amp;nbsp;type="text/javascript"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;PrintPage(divID)&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;windowOptions&amp;nbsp;=&amp;nbsp;"toolbar=no,location=no,directories=yes,menubar=no,";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;windowOptions&amp;nbsp;+=&amp;nbsp;"scrollbars=yes,width=750,height=600,left=100,top=25";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;printContent&amp;nbsp;=&amp;nbsp;document.getElementById(divID);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;printWindow&amp;nbsp;=&amp;nbsp;window.open("",&amp;nbsp;"",&amp;nbsp;windowOptions);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printWindow.document.write(printContent.innerHTML);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printWindow.document.close();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printWindow.focus();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printWindow.print();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;The printContent.innerHTML will give you all the required data on the page that has to be printed.&lt;/p&gt; &lt;p&gt;Hope this hepls,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 19 Apr 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">08985379-9e8f-4328-bd9a-60fe8134ec9b</guid><link>http://www.bluegenegeek.com/blog/2010/04/17/sorting-tabular-data-in-asp.net-mvc</link><a10:author><a10:name> </a10:name></a10:author><category>MVC2</category><category>ASP.NET</category><category>MVC</category><title>Sorting Tabular Data in ASP.NET MVC</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;In this post I will talk about how to use TableSorter Plugin (&lt;a href="http://tablesorter.com/docs/"&gt;http://tablesorter.com/docs/&lt;/a&gt;) in a ASP.NET MVC application.&lt;/p&gt; &lt;p&gt;I will be using .NET 4 and ASP.NET MVC2 for the demo code in this post.&lt;/p&gt; &lt;p&gt;I will be using AdventureWorks database that can be downloaded from codeplex as a sample database for SQL Server 2008.&lt;/p&gt; &lt;p&gt;&amp;nbsp;Add a ADO.NET Entity Data Model, for this demo purpose I have added Product table to the data designer.&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sorter1.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;Add a Controller to the MVC Application, call it ProductsController.&lt;/p&gt; &lt;p&gt;Create a Index Action Method in the controller and use the following code to get the data.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; namespace&amp;nbsp;TableSorter_MVC.Controllers&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;class&amp;nbsp;ProductsController&amp;nbsp;:&amp;nbsp;Controller&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AdventureWorksEntities&amp;nbsp;db&amp;nbsp;=&amp;nbsp;new&amp;nbsp;AdventureWorksEntities();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ActionResult&amp;nbsp;Index()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IList&amp;lt;Product&amp;gt;&amp;nbsp;products&amp;nbsp;=&amp;nbsp;db.Products.Take(200).ToList();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;View(products);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Add a View to show a List of products and strongly type it to Product Table.&lt;/p&gt; &lt;p&gt;Here is how a view code for the list would look like -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;%@&amp;nbsp;Page&amp;nbsp;Title=""&amp;nbsp;Language="C#"&amp;nbsp;MasterPageFile="~/Views/Shared/Site.Master"&amp;nbsp;Inherits="System.Web.Mvc.ViewPage&amp;lt;IEnumerable&amp;lt;TableSorter_MVC.Models.Product&amp;gt;&amp;gt;"&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;asp:Content&amp;nbsp;ID="Content1"&amp;nbsp;ContentPlaceHolderID="TitleContent"&amp;nbsp;runat="server"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Index&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;/asp:Content&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;asp:Content&amp;nbsp;ID="Content2"&amp;nbsp;ContentPlaceHolderID="MainContent"&amp;nbsp;runat="server"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;h2&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Index&amp;lt;/h2&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;table&amp;nbsp;class="tablesorter"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;thead&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProductID&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Name&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ProductNumber&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MakeFlag&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FinishedGoodsFlag&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Color&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SafetyStockLevel&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ReorderPoint&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StandardCost&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;39&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;40&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ListPrice&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;41&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/th&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;42&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/tr&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;43&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/thead&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;44&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tbody&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;45&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%&amp;nbsp;foreach&amp;nbsp;(var&amp;nbsp;item&amp;nbsp;in&amp;nbsp;Model)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;46&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;47&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;48&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;49&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.ProductID&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;50&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;51&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;52&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.Name&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;53&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;54&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;55&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.ProductNumber&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;56&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;57&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;58&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.MakeFlag&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;59&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;60&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;61&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.FinishedGoodsFlag&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;62&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;63&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;64&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.Color&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;65&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;66&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;67&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.SafetyStockLevel&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;68&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;69&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;70&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;item.ReorderPoint&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;71&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;72&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;73&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;String.Format("{0:F}",&amp;nbsp;item.StandardCost)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;74&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;75&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;76&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%:&amp;nbsp;String.Format("{0:F}",&amp;nbsp;item.ListPrice)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;77&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/td&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;78&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/tr&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;79&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%&amp;nbsp;}&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;80&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/tbody&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;81&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/table&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;82&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;/asp:Content&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;83&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;Please Note : For the table sorter plugin to work the table should have a &amp;lt;thead&amp;gt; and &amp;lt;tbody&amp;gt; for heading and body respectively.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Download the tablesorter.zip file from table sorter website. Add jquery.tablesorter.js file that comes in tablesorter.zip . For this example I picked the blue theme that comes in with tablesorter.&lt;/p&gt; &lt;p&gt;Add the site.css file that is in the blue theme of tablesorter to the content folder of the MVC application. Add the 3 images(asc.gif,desc.gif,bg.gif) to the content folder of the application as well.&lt;/p&gt; &lt;p&gt;Add these lines to include scripts and styles in the ASP.NET MVC master page.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;head&amp;nbsp;runat="server"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;title&amp;gt;&amp;lt;asp:ContentPlaceHolder&amp;nbsp;ID="TitleContent"&amp;nbsp;runat="server"&amp;nbsp;/&amp;gt;&amp;lt;/title&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="../../Content/Site.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;link&amp;nbsp;href="../../Content/tablsorter.css"&amp;nbsp;rel="stylesheet"&amp;nbsp;type="text/css"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;src="../../Scripts/jquery-1.4.1.js"&amp;nbsp;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;src="../../Scripts/jquery.tablesorter.js"&amp;nbsp;type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;lt;/head&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Once these are done, you just need to add a single line of script in Index.aspx view to make the table sortable.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;script&amp;nbsp;type="text/javascript"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$(document).ready(function&amp;nbsp;()&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$('.tablesorter').tablesorter();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/script&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Here is how the page is going to look like&lt;/p&gt; &lt;p&gt;By default -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sorter2.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;After Sorting -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/sorted-ascending.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;And&amp;nbsp;&lt;br /&gt; &lt;img src="http://www.bluegenegeek.com/images/default-album/sorted-descending.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;I will be writing another post on how to use tablesorter in&amp;nbsp; ASP.NET application shortly.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Sat, 17 Apr 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">150fd3f8-f974-46f1-955a-c233f8676ffd</guid><link>http://www.bluegenegeek.com/blog/2010/04/02/round-to-nearest-10-100-or-10-pow-n</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>C#</category><title>Round to Nearest 10,100, or 10 POW N</title><description>&lt;p&gt;This one is a quick code snippet,&lt;/p&gt; &lt;p&gt;Here is a method which can round a value to nearest 100,1000, or any 10 Pow N.&lt;/p&gt; &lt;p&gt;This method follows the rounding rules &amp;ndash;&lt;/p&gt; &lt;pre&gt;&lt;div&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;private&amp;nbsp;static&amp;nbsp;int&amp;nbsp;RoundToNDigits(double&amp;nbsp;value,int&amp;nbsp;digits)&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;valueAfterDecimal&amp;nbsp;=&amp;nbsp;Convert.ToInt32(value&amp;nbsp;%&amp;nbsp;Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;valueBeforeDecimal&amp;nbsp;=&amp;nbsp;Convert.ToInt32(value)&amp;nbsp;/&amp;nbsp;Convert.ToInt32(Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(valueAfterDecimal&amp;nbsp;&amp;lt;&amp;nbsp;50)&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;valueBeforeDecimal&amp;nbsp;*&amp;nbsp;Convert.ToInt32(Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;if&amp;nbsp;(valueAfterDecimal&amp;nbsp;&amp;gt;&amp;nbsp;50)&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;Convert.ToInt32((valueBeforeDecimal&amp;nbsp;+&amp;nbsp;1)&amp;nbsp;*&amp;nbsp;Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(valueBeforeDecimal&amp;nbsp;%&amp;nbsp;2&amp;nbsp;==&amp;nbsp;0)&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;(valueBeforeDecimal&amp;nbsp;+&amp;nbsp;1)&amp;nbsp;*&amp;nbsp;Convert.ToInt32(Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;valueBeforeDecimal&amp;nbsp;*&amp;nbsp;Convert.ToInt32(Math.Pow(10,&amp;nbsp;digits));&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;br /&gt;Hope this helps,&lt;br /&gt;Cheers,&lt;br /&gt;Venkata&lt;/pre&gt;</description><pubDate>Fri, 02 Apr 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">1be426dc-6292-4f66-985e-daa6f09fedae</guid><link>http://www.bluegenegeek.com/blog/2010/03/31/using-asp.net-charting-in-asp.net-mvc</link><a10:author><a10:name> </a10:name></a10:author><category>MVC2</category><category>charting</category><category>MVC</category><title>Using ASP.NET Charting in ASP.NET MVC</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl05_pnlPostContent"&gt; &lt;p&gt;In this blog post I will talk about how to use ASP.NET Charting controls( which Microsoft announced last year) in a ASP.NET MVC application.&lt;/p&gt; &lt;p&gt;If you want to read more about ASP.NET Charting Controls here is a link to Scott Gu's Blog Post :&amp;nbsp;&lt;a href="http://weblogs.asp.net/scottgu/archive/2008/11/24/new-asp-net-charting-control-lt-asp-chart-runat-quot-server-quot-gt.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2008/11/24/new-asp-net-charting-control-lt-asp-chart-runat-quot-server-quot-gt.aspx&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I will be using Streaming Chart Images as FileResult from MVC controller article on Code Project by Nic Roshe, to read more about the article here is a link&lt;a href="http://www.codeproject.com/KB/aspnet/MvcChartControlFileResult.aspx?msg=2959619"&gt;http://www.codeproject.com/KB/aspnet/MvcChartControlFileResult.aspx?msg=2959619&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Lets get started, create a new ASP.NET MVC application and add Reference to&lt;strong&gt;System.Web.DataVisualization&lt;/strong&gt;. Add a Class to your project called&amp;nbsp;&lt;strong&gt;ChartResult&lt;/strong&gt;(Name can be anything I am just reusing the name used by Nic Roshe in the codeproject article). This&amp;nbsp;&lt;strong&gt;ChartResult&lt;/strong&gt;Class should derive from a&amp;nbsp;&lt;strong&gt;FileResult&amp;nbsp;&lt;/strong&gt;Class. This Class would map and Image to a known MIME type. Further more since this class extends from FileResult Class System.Web.Mvc we get to override a&lt;strong&gt;WriteFile&amp;nbsp;&lt;/strong&gt;method which takes in a&amp;nbsp;&lt;strong&gt;HttpResponseBase&amp;nbsp;&lt;/strong&gt;object. The WriteFile method can then be used to create a Output memory stream.&lt;/p&gt; &lt;p&gt;Here is how the Class would look like -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;class&amp;nbsp;ChartResult&amp;nbsp;:&amp;nbsp;FileResult&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;const&amp;nbsp;int&amp;nbsp;_bufferSize&amp;nbsp;=&amp;nbsp;0x1000;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartResult(Chart&amp;nbsp;chart,&amp;nbsp;ChartImageFormat&amp;nbsp;imageFormat)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;:&amp;nbsp;base(MapImageFormatToMimeType(imageFormat))&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(null&amp;nbsp;==&amp;nbsp;chart)&amp;nbsp;throw&amp;nbsp;new&amp;nbsp;ArgumentNullException("chart");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.Chart&amp;nbsp;=&amp;nbsp;chart;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.ImageFormat&amp;nbsp;=&amp;nbsp;imageFormat;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartResult(Chart&amp;nbsp;chart)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;:&amp;nbsp;this(chart,&amp;nbsp;ChartImageFormat.Png)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;Chart&amp;nbsp;Chart&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;get;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;set;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartImageFormat&amp;nbsp;ImageFormat&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;get;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;set;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;static&amp;nbsp;string&amp;nbsp;MapImageFormatToMimeType(ChartImageFormat&amp;nbsp;imageFormat)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;switch&amp;nbsp;(imageFormat)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;ChartImageFormat.Png:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;"image/png";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;ChartImageFormat.Jpeg:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;39&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;"image/jpeg";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;40&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;41&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;ChartImageFormat.Gif:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;42&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;"image/gif";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;43&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;44&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;ChartImageFormat.Bmp:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;45&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;"image/bmp";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;46&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;47&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;ChartImageFormat.Tiff:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;48&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;"image/tiff";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;49&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;50&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;TODO:&amp;nbsp;MIME&amp;nbsp;types&amp;nbsp;for&amp;nbsp;EMF?&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;51&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;case&amp;nbsp;ChartImageFormat.Emf:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;52&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;case&amp;nbsp;ChartImageFormat.EmfPlus:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;53&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;case&amp;nbsp;ChartImageFormat.EmfDual:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;54&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;55&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;default:&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;56&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;throw&amp;nbsp;new&amp;nbsp;ArgumentException("Unsupported&amp;nbsp;format");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;57&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;58&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;59&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;60&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;protected&amp;nbsp;override&amp;nbsp;void&amp;nbsp;WriteFile(HttpResponseBase&amp;nbsp;response)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;61&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;62&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;NB:&amp;nbsp;Can't&amp;nbsp;save&amp;nbsp;directly&amp;nbsp;to&amp;nbsp;the&amp;nbsp;output&amp;nbsp;stream,&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;63&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;as&amp;nbsp;most&amp;nbsp;image&amp;nbsp;formats&amp;nbsp;require&amp;nbsp;a&amp;nbsp;seekable&amp;nbsp;stream.&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;64&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;65&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;using&amp;nbsp;(var&amp;nbsp;imageStream&amp;nbsp;=&amp;nbsp;new&amp;nbsp;MemoryStream())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;66&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;67&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.Chart.SaveImage(imageStream,&amp;nbsp;this.ImageFormat);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;68&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;imageStream.WriteTo(response.OutputStream);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;69&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;70&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;71&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&lt;strong&gt;Please note using the ChartResult and FileResult Classes, the ASP.NET Charting Control will render as a Image file on your MVC View&lt;/strong&gt;. Now lets see how this ChartResult can be used to render a ASP.NET Charting graph as a Image.&lt;/p&gt; &lt;p&gt;Lets look at how the View Page would look like -&lt;/p&gt; &lt;p&gt;There are two possibilities to render the image, we could create a ViewPage in MVC which just renders the Image or just use an &amp;lt;img&amp;gt; tag and specify its source to be the Action Method on the Controller.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;a&amp;nbsp;href="Home/BarChart"&amp;gt;Bar&amp;nbsp;Chart&amp;lt;/a&amp;gt;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;a&amp;nbsp;href="Home/PieChart"&amp;gt;Pie&amp;nbsp;Chart&amp;lt;/a&amp;gt;&amp;lt;br&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;img&amp;nbsp;src="Home/LineChart"&amp;nbsp;alt="Line&amp;nbsp;Chart"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;The&amp;nbsp;&lt;strong&gt;Home/BarChart&amp;nbsp;&lt;/strong&gt;and&amp;nbsp;&lt;strong&gt;Home/PieChart&lt;/strong&gt;&amp;nbsp;are two&amp;nbsp;&lt;strong&gt;MVC views&lt;/strong&gt;&amp;nbsp;which are just used for rendering purpose. If you feel that its a waste to create a view just to render an image you are right :). Hence the third line in the above snippet shows how the&amp;nbsp;&lt;strong&gt;image tags src attribute&lt;/strong&gt;&amp;nbsp;can be used to render the image. We give the src attribute an Action Method which returns a FileResult.&lt;/p&gt; &lt;p&gt;Now here is how the Controller Code would look like,(please note this code need not be in a controller for sake of easy demo purposes I am putting it in a controller.)&lt;/p&gt; &lt;p&gt;Here is how a&amp;nbsp;&lt;strong&gt;BarChart&lt;/strong&gt;&amp;nbsp;can be&amp;nbsp; constructed.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartResult&amp;nbsp;BarChart()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Chart&amp;nbsp;chart&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Chart();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Width&amp;nbsp;=&amp;nbsp;480;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Height&amp;nbsp;=&amp;nbsp;300;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.RenderType&amp;nbsp;=&amp;nbsp;RenderType.ImageTag;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Palette&amp;nbsp;=&amp;nbsp;ChartColorPalette.Fire;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Title&amp;nbsp;t&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Title("Bar&amp;nbsp;Chart",&amp;nbsp;Docking.Left,&amp;nbsp;new&amp;nbsp;Font("Trebuchet&amp;nbsp;MS",&amp;nbsp;14,&amp;nbsp;FontStyle.Bold),&amp;nbsp;Color.Black);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Titles.Add(t);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.BorderSkin.SkinStyle&amp;nbsp;=&amp;nbsp;BorderSkinStyle.Emboss;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.BorderlineWidth&amp;nbsp;=&amp;nbsp;2;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.BorderlineColor&amp;nbsp;=&amp;nbsp;Color.Black;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.BorderlineDashStyle&amp;nbsp;=&amp;nbsp;ChartDashStyle.Solid;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.ChartAreas.Add("Default");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Legends.Add("Legend1");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Series.Add("Series&amp;nbsp;1");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Series.Add("Series&amp;nbsp;2");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;int&amp;gt;&amp;nbsp;data&amp;nbsp;=&amp;nbsp;new&amp;nbsp;List&amp;lt;int&amp;gt;();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(3);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(9);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(5);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(2);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(4);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data.Add(7);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Series&amp;nbsp;1&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(int&amp;nbsp;value&amp;nbsp;in&amp;nbsp;data)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Series["Series&amp;nbsp;1"].Points.AddY(value);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Series&amp;nbsp;2&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;39&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(int&amp;nbsp;value&amp;nbsp;in&amp;nbsp;data)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;40&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;41&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;chart.Series["Series&amp;nbsp;2"].Points.AddY(value&amp;nbsp;-&amp;nbsp;1);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;42&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;43&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;44&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;new&amp;nbsp;ChartResult(chart,&amp;nbsp;ChartImageFormat.Png);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;45&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;46&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;47&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;48&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Here is how a&amp;nbsp;&lt;strong&gt;PieChart&amp;nbsp;&lt;/strong&gt;can be constructed -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartResult&amp;nbsp;PieChart()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Chart&amp;nbsp;pieChart&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Chart();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Width&amp;nbsp;=&amp;nbsp;480;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Height&amp;nbsp;=&amp;nbsp;300;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.RenderType&amp;nbsp;=&amp;nbsp;RenderType.ImageTag;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Palette&amp;nbsp;=&amp;nbsp;ChartColorPalette.BrightPastel;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Title&amp;nbsp;t&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Title("Pie&amp;nbsp;Chart",&amp;nbsp;Docking.Left,&amp;nbsp;new&amp;nbsp;Font("Trebuchet&amp;nbsp;MS",&amp;nbsp;14,&amp;nbsp;FontStyle.Bold),&amp;nbsp;Color.Black);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Titles.Add(t);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.ChartAreas.Add("defaultChartArea");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Legends.Add("Legend1");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series.Add("PieChartSeries");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Initialize&amp;nbsp;an&amp;nbsp;array&amp;nbsp;of&amp;nbsp;doubles&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;double[]&amp;nbsp;yval&amp;nbsp;=&amp;nbsp;{&amp;nbsp;2,&amp;nbsp;6,&amp;nbsp;4,&amp;nbsp;5,&amp;nbsp;3&amp;nbsp;};&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Initialize&amp;nbsp;an&amp;nbsp;array&amp;nbsp;of&amp;nbsp;strings&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string[]&amp;nbsp;xval&amp;nbsp;=&amp;nbsp;{&amp;nbsp;"Peter",&amp;nbsp;"Andrew",&amp;nbsp;"Julie",&amp;nbsp;"Mary",&amp;nbsp;"Dave"&amp;nbsp;};&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].ChartType&amp;nbsp;=&amp;nbsp;SeriesChartType.Pie;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Set&amp;nbsp;series&amp;nbsp;visual&amp;nbsp;attributes&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].Color&amp;nbsp;=&amp;nbsp;Color.CornflowerBlue;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].BackSecondaryColor&amp;nbsp;=&amp;nbsp;Color.SkyBlue;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].BorderColor&amp;nbsp;=&amp;nbsp;Color.Gray;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].BorderWidth&amp;nbsp;=&amp;nbsp;2;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].BorderDashStyle&amp;nbsp;=&amp;nbsp;ChartDashStyle.Solid;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].ShadowOffset&amp;nbsp;=&amp;nbsp;2;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;39&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Bind&amp;nbsp;the&amp;nbsp;data&amp;nbsp;to&amp;nbsp;chart&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;40&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].Points.DataBindXY(xval,&amp;nbsp;yval);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;41&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Turn&amp;nbsp;on&amp;nbsp;Legend&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;42&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"]["PieLabelStyle"]&amp;nbsp;=&amp;nbsp;"Disabled";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;43&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Turn&amp;nbsp;on&amp;nbsp;Labelling&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;44&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"]["PieLabelStyle"]&amp;nbsp;=&amp;nbsp;"Inside";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;45&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;46&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;47&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Make&amp;nbsp;the&amp;nbsp;Leged&amp;nbsp;to&amp;nbsp;display&amp;nbsp;text&amp;nbsp;and&amp;nbsp;percentage&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;48&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pieChart.Series["PieChartSeries"].LegendText&amp;nbsp;=&amp;nbsp;"#AXISLABEL&amp;nbsp;-&amp;nbsp;#PERCENT{P0}";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;49&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;50&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;new&amp;nbsp;ChartResult(pieChart,&amp;nbsp;ChartImageFormat.Png);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;51&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;52&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;53&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;Here is how a&amp;nbsp;&lt;strong&gt;LineChart&lt;/strong&gt;&amp;nbsp;can be constructed -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ChartResult&amp;nbsp;LineChart()&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Chart&amp;nbsp;lineChart&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Chart();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Width&amp;nbsp;=&amp;nbsp;480;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Height&amp;nbsp;=&amp;nbsp;300;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.RenderType&amp;nbsp;=&amp;nbsp;RenderType.ImageTag;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Palette&amp;nbsp;=&amp;nbsp;ChartColorPalette.BrightPastel;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Title&amp;nbsp;t&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Title("Line&amp;nbsp;Chart",&amp;nbsp;Docking.Left,&amp;nbsp;new&amp;nbsp;Font("Trebuchet&amp;nbsp;MS",&amp;nbsp;14,&amp;nbsp;FontStyle.Bold),&amp;nbsp;Color.Black);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Titles.Add(t);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.ChartAreas.Add("defaultChartArea");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Legends.Add("Legend1");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series.Add("LineChartSeries");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].ChartType&amp;nbsp;=&amp;nbsp;SeriesChartType.Line;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Set&amp;nbsp;series&amp;nbsp;visual&amp;nbsp;attributes&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].Color&amp;nbsp;=&amp;nbsp;Color.Red;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].BackSecondaryColor&amp;nbsp;=&amp;nbsp;Color.SkyBlue;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].BorderColor&amp;nbsp;=&amp;nbsp;Color.Gray;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].BorderWidth&amp;nbsp;=&amp;nbsp;2;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].BorderDashStyle&amp;nbsp;=&amp;nbsp;ChartDashStyle.Solid;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].ShadowOffset&amp;nbsp;=&amp;nbsp;2;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Populate&amp;nbsp;series&amp;nbsp;with&amp;nbsp;random&amp;nbsp;data&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Random&amp;nbsp;random&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Random();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;39&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for&amp;nbsp;(int&amp;nbsp;pointIndex&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;pointIndex&amp;nbsp;&amp;lt;&amp;nbsp;15;&amp;nbsp;pointIndex++)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;40&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;41&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lineChart.Series["LineChartSeries"].Points.AddY(random.Next(45,&amp;nbsp;95));&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;42&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;43&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;44&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;45&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;new&amp;nbsp;ChartResult(lineChart,&amp;nbsp;ChartImageFormat.Png);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;46&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;47&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;When you run the application you can see the two hyperlinks and an image being rendered on the Home Page&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img src="http://www.bluegenegeek.com/images/default-album/charts1.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;Here is a BarCart&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/barchart.png?sfvrsn=0" width="500px" /&gt;&amp;nbsp;he&lt;/p&gt; &lt;p&gt;Here is a PieChart -&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/piechart.png?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Wed, 31 Mar 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">0b7de0b3-dca4-4cbf-8093-15a76a3e4139</guid><link>http://www.bluegenegeek.com/blog/2010/03/22/shuffling-a-list-in-a-random-unbiased-way</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>C#</category><title>Shuffling a List in a random unbiased way</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl01_pnlPostContent"&gt; &lt;p&gt;I had to come up with a random and unbiased way of shuffling a list of items.&lt;/p&gt; &lt;p&gt;The first thing that came up to my mind is to sort using a simple for loop which iterates through the list of objects and calls the random function, something like this -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; public&amp;nbsp;static&amp;nbsp;void&amp;nbsp;Shuffle&amp;lt;T&amp;gt;(this&amp;nbsp;IList&amp;lt;T&amp;gt;&amp;nbsp;list)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Random&amp;nbsp;rng&amp;nbsp;=&amp;nbsp;new&amp;nbsp;Random();&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;n&amp;nbsp;=&amp;nbsp;list.Count;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while&amp;nbsp;(n&amp;nbsp;&amp;gt;&amp;nbsp;1)&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;n--;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;k&amp;nbsp;=&amp;nbsp;rng.Next(n&amp;nbsp;+&amp;nbsp;1);&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;T&amp;nbsp;value&amp;nbsp;=&amp;nbsp;list[k];&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list[k]&amp;nbsp;=&amp;nbsp;list[n];&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list[n]&amp;nbsp;=&amp;nbsp;value;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Then I read this post by Jeff Atwood -&amp;nbsp;&lt;a href="http://www.codinghorror.com/blog/2007/12/shuffling.html"&gt;http://www.codinghorror.com/blog/2007/12/shuffling.html&lt;/a&gt;where he says the best way to do a random unbiased shuffling is to do a sort by a Random Number in .NET world a NewGuid().&lt;/p&gt; &lt;p&gt;Interesting, so I started to write a little sample to prove&amp;nbsp; that shuffling using a random sort indeed works. Here is an example snippet.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class&amp;nbsp;Program&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;static&amp;nbsp;void&amp;nbsp;Main(string[]&amp;nbsp;args)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;List&amp;lt;Int32&amp;gt;&amp;nbsp;intlist&amp;nbsp;=&amp;nbsp;new&amp;nbsp;List&amp;lt;int&amp;gt;();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for&amp;nbsp;(int&amp;nbsp;i&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;i&amp;nbsp;&amp;lt;&amp;nbsp;10;&amp;nbsp;i++)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;intlist.Add(i);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;intlist&amp;nbsp;=&amp;nbsp;intlist.OrderBy(il&amp;nbsp;=&amp;gt;&amp;nbsp;Guid.NewGuid()).ToList();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(int&amp;nbsp;i&amp;nbsp;in&amp;nbsp;intlist)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(i);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Notice at Line number 11 I call a&lt;strong&gt;&amp;nbsp;.OrderBy(il=&amp;gt; Guid.NewGuid()).&lt;/strong&gt;. Man it works like a champ. Here are some test results.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Iteration 1 :&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;3&lt;br /&gt;
2&lt;br /&gt;
9&lt;br /&gt;
6&lt;br /&gt;
1&lt;br /&gt;
0&lt;br /&gt;
8&lt;br /&gt;
7&lt;br /&gt;
4&lt;br /&gt;
5&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Iteration 2 :&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;9&lt;br /&gt;
6&lt;br /&gt;
5&lt;br /&gt;
7&lt;br /&gt;
4&lt;br /&gt;
2&lt;br /&gt;
8&lt;br /&gt;
1&lt;br /&gt;
0&lt;br /&gt;
3&lt;/p&gt; &lt;p&gt;Hope this helps.&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 22 Mar 2010 07:00:00 Z</pubDate></item><item><guid isPermaLink="false">88545c5b-0937-4de0-abeb-60d984eab1cc</guid><link>http://www.bluegenegeek.com/blog/2010/03/11/asp.net-mvc2-client-validation</link><a10:author><a10:name> </a10:name></a10:author><category>asp.net</category><category>MVC2</category><category>MVC</category><title>ASP.NET MVC2 Client Validation</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;Some time back I blogged about building my own blog, well I started building it in my spare time. As I mentioned previously, I am using ASP.NET MVC2 and .NET 4 as my platform.&lt;/p&gt; &lt;p&gt;To start with today, I would walk through how to build a simple contact me page by using ASP.NET MVC2's Model Validation Techniques.&lt;/p&gt; &lt;p&gt;First let us put the View Page together -&lt;/p&gt; &lt;p&gt;Below is the content section of my View which takes in a ContactMe as a Model&lt;/p&gt; &lt;p&gt;Here is the Header -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;%@&amp;nbsp;Page&amp;nbsp;Title=""&amp;nbsp;Language="C#"&amp;nbsp;MasterPageFile="~/Views/Shared/Site.Master"&amp;nbsp;Inherits="System.Web.Mvc.ViewPage&amp;lt;Berkeley.Models.ContactMe&amp;gt;"&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;And here is the View Page - Notice the Html.EnableClientValidation() in Line Number about which I will be talking in depth below.&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;lt;%&amp;nbsp;Html.EnableClientValidation();&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%&amp;nbsp;using&amp;nbsp;(Html.BeginForm())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;fieldset&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;legend&amp;gt;Contact&amp;nbsp;Me&amp;lt;/legend&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-label"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.LabelFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Name)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-field"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.TextBoxFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Name)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.ValidationMessageFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Name)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-label"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.LabelFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Email)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-field"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.TextBoxFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Email)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.ValidationMessageFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Email)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-label"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.LabelFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Subject)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-field"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.TextBoxFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Subject)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.ValidationMessageFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Subject)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-label"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.LabelFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Message)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;nbsp;class="editor-field"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.TextAreaFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Message)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%=&amp;nbsp;Html.ValidationMessageFor(model&amp;nbsp;=&amp;gt;&amp;nbsp;model.ContactMe.Message)&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;33&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;34&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;p&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;35&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input&amp;nbsp;type="submit"&amp;nbsp;name="btnSendMessage"&amp;nbsp;value="Send&amp;nbsp;Message"&amp;nbsp;class="stylizedBtn"&amp;nbsp;/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;36&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/p&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;37&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/fieldset&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;38&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;%&amp;nbsp;}&amp;nbsp;%&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Notice the New TextBoxFor , TextAreaFor , ValidationMessageFor - Html Helper methods which are introduced in ASP.NET MVC2 and can take in LINQ Lamda Syntax(which I Love :), I will write a follow up post soon on these methods soon).&lt;/p&gt; &lt;p&gt;So the view is pretty straight forward which takes in a Model and Displays a simple Insert Form.&lt;/p&gt; &lt;p&gt;To get Client Side Validation in ASP.NET MVC2 to work all we have to do is drop in references to MicrosoftMVCValidation.js and MicrosoftAjax.js (which ship with the default project template for MVC2) and call Html.EnableClientValidation(). That's it from a View Point of view.&lt;/p&gt; &lt;p&gt;And from a Model point of view here's how we define validation rules. For this example I am going to be using Entity Framework, so the ORM generates my classes for me. I am going to use something called "buddy classes". Here a more about using buddy classes in Detail.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&amp;nbsp;Using Data Annotations with Entity Framework Classes&lt;/strong&gt;&amp;nbsp;-&lt;/p&gt; &lt;p&gt;After letting EF generate the classes, we write a partial class for the generated class, here is a snippet of how the partial class would look like -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; namespace&amp;nbsp;Berkeley.Models&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[MetadataType(typeof(ContactMeValidator))]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;partial&amp;nbsp;class&amp;nbsp;ContactMe&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Notice above,&amp;nbsp;&lt;strong&gt;ContactMe&lt;/strong&gt;&amp;nbsp;is the class generated by Entity Framework and&amp;nbsp;&lt;strong&gt;ContactMeValidator&lt;/strong&gt;&amp;nbsp;is our buddy class which holds the validation rules. All we are saying above is letting the framework know that if it encounters a Class named ContactMe then its MetaData information is in a Class Named ContactMeValidator.&lt;/p&gt; &lt;p&gt;Here's what a buddy class with validation logic would look like -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; namespace&amp;nbsp;Berkeley.Models&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Bind(Exclude="ContactMeID")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;class&amp;nbsp;ContactMeValidator&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Required(ErrorMessage="Name&amp;nbsp;is&amp;nbsp;Required")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[StringLength(50,ErrorMessage="Name&amp;nbsp;Must&amp;nbsp;be&amp;nbsp;Under&amp;nbsp;50&amp;nbsp;Characters")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;String&amp;nbsp;Name&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Required(ErrorMessage&amp;nbsp;=&amp;nbsp;"Email&amp;nbsp;is&amp;nbsp;Required")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[StringLength(50,&amp;nbsp;ErrorMessage&amp;nbsp;=&amp;nbsp;"Email&amp;nbsp;Must&amp;nbsp;be&amp;nbsp;Under&amp;nbsp;200&amp;nbsp;Characters")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[RegularExpression(@"^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$",&amp;nbsp;ErrorMessage&amp;nbsp;=&amp;nbsp;"Email&amp;nbsp;Not&amp;nbsp;in&amp;nbsp;Valid&amp;nbsp;Format")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;String&amp;nbsp;Email&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Required(ErrorMessage&amp;nbsp;=&amp;nbsp;"Subject&amp;nbsp;is&amp;nbsp;Required")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[StringLength(50,&amp;nbsp;ErrorMessage&amp;nbsp;=&amp;nbsp;"Subject&amp;nbsp;Must&amp;nbsp;be&amp;nbsp;Under&amp;nbsp;500&amp;nbsp;Characters")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;String&amp;nbsp;Subject&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Required(ErrorMessage&amp;nbsp;=&amp;nbsp;"Message&amp;nbsp;is&amp;nbsp;Required")]&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;String&amp;nbsp;Message&amp;nbsp;{&amp;nbsp;get;&amp;nbsp;set;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt;
Note : I am using .NET 3.5's Data Annotations. with&amp;nbsp;&lt;strong&gt;Required,StringLength, and RegularExpression&lt;/strong&gt;keywords.
&lt;p&gt;That is essentially it. We defined the validation rules in a buddy class which extends to hold the meta data information of classes generated by Entity Framework.&lt;/p&gt; &lt;p&gt;Here is a screen shot of how the webpage would look like&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/mvc2validation.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;I will upload a code sample of this example soon.&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt;</description><pubDate>Thu, 11 Mar 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">9530a918-5de3-4c31-b677-89091fa0b546</guid><link>http://www.bluegenegeek.com/blog/2010/02/18/post-xml-data-using-asp.net</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>asp.net</category><category>ASP.NET</category><title>Post XML Data using ASP.NET</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt; &lt;p&gt;This post is more of a code snippet ,&lt;/p&gt; &lt;p&gt;Here is the scenario,&lt;/p&gt; &lt;ul&gt; &lt;li&gt;You may want to Post to a third party web service or server your XML data.&lt;/li&gt; &lt;li&gt;You may want to Read data posted by third party web service or server to your application.&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;Here is the snippet to create a XML Post -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string&amp;nbsp;fileName&amp;nbsp;=&amp;nbsp;Server.MapPath("~/TestData/TestXML.xml");&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HttpRequest&amp;nbsp;url&amp;nbsp;=&amp;nbsp;Context.Request;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string&amp;nbsp;uriToPostTo&amp;nbsp;=&amp;nbsp;"http://Example.com/PostReceivingPage.aspx";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WebRequest&amp;nbsp;request&amp;nbsp;=&amp;nbsp;WebRequest.Create(uriToPostTo);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request.Method&amp;nbsp;=&amp;nbsp;"POST";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request.ContentType&amp;nbsp;=&amp;nbsp;"text/xml";&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;using&amp;nbsp;(Stream&amp;nbsp;dataStream&amp;nbsp;=&amp;nbsp;request.GetRequestStream())&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;using&amp;nbsp;(StreamReader&amp;nbsp;reader&amp;nbsp;=&amp;nbsp;new&amp;nbsp;StreamReader(fileName))&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string&amp;nbsp;postData&amp;nbsp;=&amp;nbsp;reader.ReadToEnd();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;byte[]&amp;nbsp;byteArray&amp;nbsp;=&amp;nbsp;Encoding.UTF8.GetBytes(postData);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dataStream.Write(byteArray,&amp;nbsp;0,&amp;nbsp;byteArray.Length);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dataStream.Close();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;WebResponse&amp;nbsp;response&amp;nbsp;=&amp;nbsp;request.GetResponse();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;response.Close();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Here is the snippet to read XML that has already been posted -&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StreamReader&amp;nbsp;reader&amp;nbsp;=&amp;nbsp;new&amp;nbsp;StreamReader(Page.Request.InputStream);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(reader&amp;nbsp;!=&amp;nbsp;null)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string&amp;nbsp;xml&amp;nbsp;=&amp;nbsp;reader.ReadToEnd();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;catch&amp;nbsp;(WebException)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Please note while creating a POST , URI to post to has to be an URL example : http://localhost/Foo.aspx , it cannot be a Physical Path of the File .&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;&amp;nbsp;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Thu, 18 Feb 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">0e35b11a-a550-49d3-83b7-677d92391278</guid><link>http://www.bluegenegeek.com/blog/2010/02/05/how-to-ftp-a-file-through-c-</link><a10:author><a10:name> </a10:name></a10:author><category>code snippet</category><category>ftp</category><category>C#</category><title>How to FTP a file through C#</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl04_pnlPostContent"&gt; &lt;p&gt;.NET Framework gives us a nice little API to FTP a file to a server using C#, VB.NET . This article is an attempt to put it to code.&lt;/p&gt; &lt;p&gt;Please note that I am only doing a File Upload using FTP. File Download will follow soon.&lt;/p&gt; &lt;p&gt;&amp;nbsp;Add a reference to Sytem.Net to the application - and use the following fragment. -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; string&amp;nbsp;ftpFileName&amp;nbsp;=&amp;nbsp;@"C:\temp\Foo.txt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Get&amp;nbsp;the&amp;nbsp;fileInfo&amp;nbsp;to&amp;nbsp;be&amp;nbsp;uploaded&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FileInfo&amp;nbsp;fileInfo&amp;nbsp;=&amp;nbsp;new&amp;nbsp;FileInfo(ftpFileName);&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Create&amp;nbsp;a&amp;nbsp;FTPWebRequest&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FtpWebRequest&amp;nbsp;request&amp;nbsp;=&amp;nbsp;(FtpWebRequest)WebRequest.Create("ftp://"&amp;nbsp;+&amp;nbsp;Settings.Default.FTPServer&amp;nbsp;+&amp;nbsp;@"/"&amp;nbsp;+&amp;nbsp;fileInfo.Name);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request.Method&amp;nbsp;=&amp;nbsp;WebRequestMethods.Ftp.UploadFile;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Setting&amp;nbsp;Credentials&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;11&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;request.Credentials&amp;nbsp;=&amp;nbsp;new&amp;nbsp;NetworkCredential(Settings.Default.FTPUserName,&amp;nbsp;Settings.Default.FTPPassword);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;12&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;13&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Setup&amp;nbsp;a&amp;nbsp;stream&amp;nbsp;for&amp;nbsp;the&amp;nbsp;request&amp;nbsp;and&amp;nbsp;a&amp;nbsp;stream&amp;nbsp;for&amp;nbsp;the&amp;nbsp;file&amp;nbsp;that&amp;nbsp;we&amp;nbsp;are&amp;nbsp;uploading&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;14&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Stream&amp;nbsp;ftpStream&amp;nbsp;=&amp;nbsp;request.GetRequestStream();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;15&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;FileStream&amp;nbsp;file&amp;nbsp;=&amp;nbsp;File.OpenRead(ftpFileName);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;16&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;17&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;18&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Variables&amp;nbsp;to&amp;nbsp;read&amp;nbsp;the&amp;nbsp;file&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;19&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;length&amp;nbsp;=&amp;nbsp;1024;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;20&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;byte[]&amp;nbsp;buffer&amp;nbsp;=&amp;nbsp;new&amp;nbsp;byte[length];&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;21&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&amp;nbsp;bytesRead&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;22&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;23&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Write&amp;nbsp;the&amp;nbsp;file&amp;nbsp;to&amp;nbsp;requerst&amp;nbsp;stream&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;24&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;do&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;25&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;26&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bytesRead&amp;nbsp;=&amp;nbsp;file.Read(buffer,&amp;nbsp;0,&amp;nbsp;length);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;27&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ftpStream.Write(buffer,&amp;nbsp;0,&amp;nbsp;bytesRead);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;28&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;while&amp;nbsp;(bytesRead&amp;nbsp;!=&amp;nbsp;0);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;29&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;30&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Flush&amp;nbsp;/&amp;nbsp;Close&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;31&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;file.Close();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;32&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ftpStream.Close();&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Please note that I am using a Settings file to read the FTPServer, FTPUsername and FTPPassword. You could use a hardcoded / read from DB / XML value there.&lt;/p&gt; &lt;p&gt;Hope this helps,&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Fri, 05 Feb 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">9746a9e0-9dab-4416-97b4-50fa65adada2</guid><link>http://www.bluegenegeek.com/blog/2010/01/25/finding-duplicates-using-sql</link><a10:author><a10:name> </a10:name></a10:author><category>Script</category><category>SQL</category><category>SQL</category><title>Finding Duplicates using SQL</title><description>&lt;p&gt;Here is a handy script to find duplicates in a table using SQL -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; select&amp;nbsp;column,&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count(column)&amp;nbsp;as&amp;nbsp;numofoccurrences&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;from&amp;nbsp;table&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;group&amp;nbsp;by&amp;nbsp;column&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;having&amp;nbsp;count(column)&amp;nbsp;&amp;gt;&amp;nbsp;1&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Mon, 25 Jan 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">4d8d00bd-fecd-4b79-9b57-8f4ed243069f</guid><link>http://www.bluegenegeek.com/blog/2010/01/11/building-my-own-blog</link><a10:author><a10:name> </a10:name></a10:author><category>MVC</category><category>BYOB</category><title>Building my own Blog</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl01_pnlPostContent"&gt; &lt;p&gt;Over the last few days, I am spending some time to build my own blog. I often feel that a real developer builds his own blog and then blogs using it.:)&lt;/p&gt; &lt;p&gt;With all these CMS tools , blogging systems I have tried and seen the source code for , I always wanted to write my own blogging system that I can blog and add functionality to my blog whenever I want to in the way I want to - not waiting for a new release for the tool I am using or not waiting for someone to make a change so that I can use it.&lt;/p&gt; &lt;p&gt;So here I am building my own blog - I will be using .NET 4 and ASP.NET MVC 2 to build my own blog.&lt;/p&gt; &lt;p&gt;I will be posting a series of blog posts at various stages of development indicating where I am at and my decisions to do a certain task and why I choose that path.&lt;/p&gt; &lt;p&gt;I am going release a Version 1 of my blog even if it sucks any way on codeplex.&lt;/p&gt; &lt;p&gt;See you in Build Your Own Blog (BYOB) series soon.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 11 Jan 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">24f31f26-a3b9-467e-945c-040dcb9e162e</guid><link>http://www.bluegenegeek.com/blog/2010/01/01/happy-new-year-2010</link><a10:author><a10:name> </a10:name></a10:author><category>New Years</category><category>2010</category><category>General</category><title>Happy New Year 2010</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl02_pnlPostContent"&gt; &lt;p&gt;I wish everyone a very Happy and Prosperous New Year 2010. :)&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/happy-new-year.jpg?sfvrsn=0" width="500px" /&gt;&lt;/p&gt; &lt;/div&gt;</description><pubDate>Fri, 01 Jan 2010 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">a83b49a7-5970-44a5-8883-bb0e3e57dd74</guid><link>http://www.bluegenegeek.com/blog/2009/12/14/update-data-in-one-table-with-a-new-or-other-table</link><a10:author><a10:name> </a10:name></a10:author><category>SQL</category><category>Update Script</category><category>SQL</category><title>Update Data in one table with a new or Other table</title><description>&lt;div id="ctl00_Content_BlogPosts1_ctl00_repeater_ctl03_pnlPostContent"&gt;Consider the following scenario -&amp;nbsp;&lt;br /&gt; &lt;br /&gt;
You have data in one table which is old, and then you have data in a newer table which is all good.&lt;br /&gt;
If you have to update the old table with new tables data you can take one of these two approaches&lt;br /&gt; &lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;1. Write a SQL Query that does that&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;2. Write a program to iterate and update (ah, I know no one does this except for a purely programming guy who doesn't know any of SQL)&lt;br /&gt; &lt;br /&gt;
I am going to focus on writing a SQL Query to update the data -&amp;nbsp;&lt;br /&gt;
I am going to present you with two ways of writing this query&lt;br /&gt; &lt;p&gt;Here goes the first one-&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; update&amp;nbsp;OldTable&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;set&amp;nbsp;OldTable.DataToBeUpdated&amp;nbsp;=&amp;nbsp;NewTable.DataToBeUpdated&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;from&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;OldTable,&amp;nbsp;NewTable&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;where&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;OldTable.SomeId&amp;nbsp;=&amp;nbsp;NewTable.SomeId&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;p&gt;And then the second,&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; update&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;(&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;select&amp;nbsp;NewTable.DataToBeUpdated&amp;nbsp;as&amp;nbsp;new_value,&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OldTable.DataToBeUpdated&amp;nbsp;as&amp;nbsp;old_value&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;from&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OldTable&amp;nbsp;inner&amp;nbsp;join&amp;nbsp;NewTable&amp;nbsp;&amp;nbsp;on&amp;nbsp;OldTable.SomeId&amp;nbsp;=&amp;nbsp;NewTable.SomeId&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;where&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;NewTable.DataToBeUpdated&amp;nbsp;is&amp;nbsp;not&amp;nbsp;Null&amp;nbsp;--Some&amp;nbsp;Criteria&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;10&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;set&amp;nbsp;old_value&amp;nbsp;=&amp;nbsp;new_value;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt;
Hope this Helps,&lt;br /&gt;
Cheers&lt;br /&gt;
Venkata&lt;br /&gt; &lt;br /&gt; &lt;/div&gt; &lt;br /&gt;</description><pubDate>Mon, 14 Dec 2009 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">7a0d0dc6-d823-4c94-a422-b2d5f1a89192</guid><link>http://www.bluegenegeek.com/blog/2009/12/07/adding-tooltip-to-dropdown-list-items</link><a10:author><a10:name> </a10:name></a10:author><category>asp.net</category><category>ASP.NET</category><title>Adding Tooltip to Dropdown List Items</title><description>&lt;p&gt;Here is a way to add tool tips to items in dropdownlist.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; //Assuming&amp;nbsp;dropdownLis1&amp;nbsp;is&amp;nbsp;already&amp;nbsp;Bound.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(ListItem&amp;nbsp;listItem&amp;nbsp;in&amp;nbsp;dropdownList1.Items)&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listItem.Attributes.Add("title",&amp;nbsp;&amp;ldquo;tooltip&amp;nbsp;text&amp;rdquo;);&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;Hope this Helps&lt;/p&gt;
Cheers!!!
&lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Mon, 07 Dec 2009 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">9b4eb8f5-2255-4733-b820-aea47d777bab</guid><link>http://www.bluegenegeek.com/blog/2009/12/05/using-elmah-in-your-website</link><a10:author><a10:name> </a10:name></a10:author><category>Elmah</category><category>asp.net</category><category>OpenSource</category><title>Using Elmah in your website</title><description>&lt;p&gt;Off late I have been using many of open-source projects in the websites that I am trying to build.&lt;/p&gt; &lt;p&gt;Elmah is one among them&amp;nbsp; - Click&amp;nbsp;&lt;a href="http://code.google.com/p/elmah/" title="Elmah on Google Code"&gt;Here&lt;/a&gt;&amp;nbsp;to know more about Elmah.&lt;/p&gt; &lt;p&gt;Here is my quick take on how to use Elmah in your website.&lt;/p&gt; &lt;p&gt;NOTE: This demo application is built using .NET Framework 4.0 and Visual Studio 2010 Beta2.&lt;/p&gt; &lt;p&gt;To start using Elmah in your website, include Elmah.dll in to your website. Go to the website right-click on the solution and say add reference&lt;img src="http://www.bluegenegeek.com/images/default-album/addreference.png?sfvrsn=0" /&gt;&lt;/p&gt; &lt;p&gt;Point to the Elmah.dll that you have downloaded from google code and it as it as a reference in your project.&lt;/p&gt; &lt;p&gt;Next in your web.config add the following changes. -&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Adding Elmah Configuration Section&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;lt;configSections&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;sectionGroup&amp;nbsp;name="elmah"&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;section&amp;nbsp;name="errorLog"&amp;nbsp;requirePermission="false"&amp;nbsp;type="Elmah.ErrorLogSectionHandler,&amp;nbsp;Elmah"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;section&amp;nbsp;name="errorMail"&amp;nbsp;requirePermission="false"&amp;nbsp;type="Elmah.ErrorMailSectionHandler,&amp;nbsp;Elmah"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;section&amp;nbsp;name="errorFilter"&amp;nbsp;requirePermission="false"&amp;nbsp;type="Elmah.ErrorFilterSectionHandler,&amp;nbsp;Elmah"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/sectionGroup&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/configSections&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2. Add Elmah Connection String&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;connectionStrings&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add&amp;nbsp;name="ElmahConnectionString"&amp;nbsp;connectionString="Data&amp;nbsp;Source=SUBBARAO-PC\SQLEXPRESS;Initial&amp;nbsp;Catalog=ElmahDatabase;Persist&amp;nbsp;Security&amp;nbsp;Info=True;User&amp;nbsp;ID=sa;Password=sql"&amp;nbsp;providerName="System.Data.SqlClient"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/connectionStrings&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp; 3. Add Elmah Section to your Web.config&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;elmah&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;errorLog&amp;nbsp;type="Elmah.SqlErrorLog,&amp;nbsp;Elmah"&amp;nbsp;connectionStringName="ElmahConnectionString"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;Don't&amp;nbsp;log&amp;nbsp;404&amp;nbsp;--&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;errorFilter&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;test&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;equal&amp;nbsp;binding="HttpStatusCode"&amp;nbsp;value="404"&amp;nbsp;valueType="Int32"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;7&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/test&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;8&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/errorFilter&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;9&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/elmah&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp; 4.&amp;nbsp; Add Custom Error Page ( Please note that this step is optional) you may redirect the client to a generic error page or let the Yellow Screen of Death be shown. If you choose to include a generic error page, include the following lines in the web.config&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;customErrors&amp;nbsp;mode="On"&amp;nbsp;defaultRedirect="~/Error.aspx"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;&amp;nbsp; 5. Add HttpHandlers and HttpModules that Elmah needs. -&lt;/p&gt; &lt;div&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup&gt;&lt;col /&gt;&lt;col /&gt;&lt;/colgroup&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;1&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt; &amp;lt;httpHandlers&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;2&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add&amp;nbsp;verb="POST,GET,HEAD"&amp;nbsp;path="elmah.axd"&amp;nbsp;type="Elmah.ErrorLogPageFactory,&amp;nbsp;Elmah"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;3&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/httpHandlers&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;4&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;httpModules&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;5&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add&amp;nbsp;name="ErrorLog"&amp;nbsp;type="Elmah.ErrorLogModule,&amp;nbsp;Elmah"/&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;nobr&gt;6&lt;/nobr&gt;&lt;/td&gt; &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/httpModules&amp;gt;&amp;nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;/div&gt; &lt;p&gt;&amp;nbsp;That is all the configuration we need to do to get Elmah up.&lt;/p&gt; &lt;p&gt;As for an example that accompanies Elmah I wrote the sample that can be downloaded. This is what I wrote to simulate Elmah.&lt;/p&gt; &lt;p&gt;I added a Button Click method which throws a NotImplemented Exception . When the website is redirected to a generice Error page (Error.aspx in this case). It can tell the client whatever error message we want to convey them.&lt;/p&gt; &lt;p&gt;Then hit www.yourwebsite.com/elmah.axd to view a error log which would look similar to this&lt;/p&gt; &lt;p&gt;&lt;img src="http://www.bluegenegeek.com/images/default-album/elmah.png?sfvrsn=0" width="500" /&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;The view details of Elmah would show you exactly the Yellow Screen of Death that your client sees.&lt;/p&gt; &lt;p&gt;Everything above should get you up and running for using Elmah.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bluegenegeek.com/www.haacked.com"&gt;Phil Haack&lt;/a&gt;&amp;nbsp;has an excellent article to secure Elmah&amp;nbsp;&lt;a href="http://haacked.com/archive/2007/07/24/securely-implement-elmah-for-plug-and-play-error-logging.aspx"&gt;here&lt;/a&gt;&amp;nbsp;.&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/www.hanselma.com"&gt;Scott Hanselman&lt;/a&gt;&amp;nbsp;has an article to show you how to use Elmah with ASP.NET MVC&amp;nbsp;&lt;a href="http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Hope this article helps .&lt;/p&gt; &lt;p&gt;&lt;strong&gt;You can download all the Code for this article&amp;nbsp;&lt;a href="http://bluegenegeek.com/Code/ElmahDemo.zip"&gt;here&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;The Script that is need to be run against a SQL Database could be found&amp;nbsp;&lt;a href="http://www.bluegenegeek.com/Libraries/Code_Samples/Database.sflb.ashx"&gt;here&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Cheers,&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sat, 05 Dec 2009 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">aacc25d8-7a45-480f-8050-b1c75fda06a0</guid><link>http://www.bluegenegeek.com/blog/2009/11/28/calling-a-parent-javascript-method-from-a-child-page</link><a10:author><a10:name> </a10:name></a10:author><category>Java Script</category><category>ASP.NET</category><title>Calling a Parent Javascript Method from a Child Page</title><description>&lt;p&gt;If we want to call a javascript method on parent page from a child page, we could use something like this-&lt;/p&gt; &lt;p&gt;&amp;lt;a onclick=&amp;rsquo;javascript:parent.ParentJavaScriptMethod()&amp;rsquo; &amp;gt;Click To Do Some Parent Specific Action &amp;lt;/a&amp;gt;&lt;/p&gt; &lt;p&gt;parent. and follow it up by any method name that you wish to use in parent page.&lt;/p&gt; &lt;p&gt;Hope this helps&lt;/p&gt; &lt;p&gt;Cheers!!!&lt;/p&gt; &lt;br /&gt;</description><pubDate>Sat, 28 Nov 2009 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">763b47f8-1357-4de4-b6e8-0c19cd44c471</guid><link>http://www.bluegenegeek.com/blog/2009/11/15/i-am-windows-7-pc</link><a10:author><a10:name> </a10:name></a10:author><category>Windows 7</category><category>Windows 7</category><title>I am windows 7 PC</title><description>&lt;p&gt;I have been an early adopter of Microsoft's newest operating system&amp;nbsp;&lt;a href="http://www.microsoft.com/windows/windows-7/"&gt;Windows 7&lt;/a&gt;. I have used this operating system from its beta stages to RC and finally last week I have my Windows 7 Home Premium on my laptop.&lt;/p&gt; &lt;p&gt;&amp;nbsp;I love Windows 7 for many reasons - its faster , its more reliable and till date I haven't seen&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Blue_Screen_of_Death"&gt;BSOD&lt;/a&gt;. :) . My friends say that I am blind follower of whatever Microsoft releases but I say in this tech world if some one has its say its gotta be Microsoft.&lt;/p&gt; &lt;p&gt;On the other hand Dell is giving me a hard time with drivers , I contacted their support and guess what I have to pay for even driver support for Windows 7 as I didn't buy the Windows 7 from Dell, too bad.&lt;/p&gt; &lt;p&gt;Anyways I am happy with my new Windows 7 and I am running Visual Studio 2010 Beta 2 and .NET Framework 4.&lt;/p&gt; &lt;p&gt;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sun, 15 Nov 2009 08:00:00 Z</pubDate></item><item><guid isPermaLink="false">2fce582b-0b0b-4862-97dc-c4a003d46aa0</guid><link>http://www.bluegenegeek.com/blog/2009/11/02/my-move-to-bluegenegeek.com</link><a10:author><a10:name> </a10:name></a10:author><category>Intro</category><category>General</category><title>My move to bluegenegeek.com</title><description>&lt;p&gt;This is my new home in the internet world. Previously I used to blog a bit to keep track of software problems that I have solved on&amp;nbsp;&lt;a target="_blank" href="http://subbaraokv.blogspot.com/"&gt;My Blog&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I have been making a cautious effort to blog more and found my limited capabilities with blogspot are also keeping me away from blogging.&lt;/p&gt; &lt;p&gt;From today, I am very much committed to blog frequently on various interests here on&lt;a href="http://bluegenegeek.com/"&gt;Bluegenegeek.com&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I would blog mainly on ASP.NET , ASP.NET MVC , SQL Server, SSIS, WPF , WCF. and other technologies that I work in my day to day work. Apart from these I have decided to blog my personal interests, goals, everything that makes me who I am here, too.&lt;/p&gt; &lt;p&gt;&amp;nbsp;I have decided to use Sitefinity for a number of reasons. I tried&amp;nbsp;&lt;a href="http://wordpress.org/" target="_blank"&gt;WordPress&lt;/a&gt;&amp;nbsp;but my passing towards ASP.NET said i should not be blogging on a PHP, MySQL environment. Then I tried&amp;nbsp;&lt;a href="http://www.subtextproject.com/" target="_blank"&gt;Subtext&lt;/a&gt;, which I found very powerful but I thought I need more than just a blog. So I decided to move to&amp;nbsp;&lt;a href="http://www.sitefinity.com/" target="_blank"&gt;Sitefinity&lt;/a&gt;, and the folks offer the community edition license for free. :)&lt;/p&gt; &lt;p&gt;So here I am in the internet world with my own space.&lt;/p&gt; &lt;p&gt;To know more about me please head to&amp;nbsp;&lt;a href="http://bluegenegeek.com/About.aspx" target="_blank"&gt;About Me&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&amp;nbsp;Cheers&lt;/p&gt; &lt;p&gt;Venkata&lt;/p&gt;</description><pubDate>Sun, 01 Nov 2009 07:00:00 Z</pubDate></item></channel></rss>

