<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4759757065019231063</id><updated>2012-01-23T01:35:56.598+05:30</updated><category term='Personal'/><category term='Prizes'/><category term='Visual Studio'/><category term='2009'/><category term='FAQ'/><category term='Tony'/><category term='news'/><category term='web'/><category term='Release'/><category term='Testi'/><category term='Code Dom: A Step Ahead Series'/><category term='searchprotocol.exe'/><category term='Founder'/><category term='gift'/><category term='info'/><category term='Partial Class'/><category term='CLR PROC'/><category term='XAML'/><category term='Msdotnetheaven'/><category term='sqlOptimization'/><category term='MVM'/><category term='Jalfa Mata'/><category term='Microsoft Community'/><category term='rewards'/><category term='Beta'/><category term='SqlServer'/><category term='mynangal.com'/><category term='dns-annual member'/><category term='LINQ'/><category term='Service Locator'/><category term='dlr'/><category term='Raghav'/><category term='silverlight games'/><category term='A Step Ahead Series'/><category term='MVP'/><category term='Welcome Kit'/><category term='XML'/><category term='MsExcel'/><category term='microsoft user group'/><category term='jaipurmentor.com'/><category term='Webmaster'/><category term='SDK'/><category term='CAS'/><category term='g_arora'/><category term='.net remoting'/><category term='interview'/><category term='windowsxp'/><category term='Assembly'/><category term='Constructors'/><category term='silverlight for windows phone'/><category term='Vs2010'/><category term='Debugging WCF services'/><category term='Web Space'/><category term='html'/><category term='Gist'/><category term='server-side'/><category term='session'/><category term='unit testing'/><category term='asp.net'/><category term='indimix2010'/><category term='Tecnology news  .  IPhone app  .  Google app  .  Google  .  Gogle Store  .  Android app  .'/><category term='Nullable – At a glance'/><category term='Nunit'/><category term='DNS-MVM'/><category term='ErrorPage'/><category term='SEO Tips'/><category term='articles'/><category term='Monthly Winner Award - December'/><category term='Microsoft'/><category term='Lambda Expression'/><category term='State Management'/><category term='Free online Sessions'/><category term='javascript'/><category term='TechEd2009'/><category term='expression blend 3'/><category term='Award'/><category term='cache'/><category term='.Net'/><category term='MCP'/><category term='oops'/><category term='Gaurav Arora'/><category term='Appreciation'/><category term='application'/><category term='general'/><category term='Visual Studio 2010'/><category term='WCF services'/><category term='ASP.NET MVC'/><category term='site'/><category term='Datagrid'/><category term='interface'/><category term='Admin'/><category term='Transportation'/><category term='Technology News'/><category term='Computer joke'/><category term='MouseEvents'/><category term='class'/><category term='MicroSoft in OpenSource : PHP'/><category term='ASPX Pages Dynamically creation'/><category term='sqlscrpt'/><category term='Baba Balak Nath'/><category term='Religious places'/><category term='moonlight'/><category term='Dotnetspider'/><category term='snippet'/><category term='Window.open'/><category term='Control State'/><category term='Tourism in Nangal'/><category term='Domain Registrations'/><category term='nextgen web'/><category term='Static Constructor'/><category term='mywindosclub'/><category term='Controls'/><category term='videos'/><category term='Iterators'/><category term='SQL Server 2008 training courses'/><category term='Anonymous Types'/><category term='Web solutions'/><category term='C#'/><category term='Became The Webmaster from a Member'/><category term='client-side'/><category term='Gems of Nangal'/><category term='ado.net'/><category term='Recognition'/><category term='Open-Source Blog : Launched by MicroSoft'/><category term='sql'/><category term='About Us'/><category term='World record Sessions'/><category term='clr'/><category term='unix'/><category term='awards'/><category term='Journey'/><category term='structure'/><category term='MCTS'/><category term='viewstate'/><category term='ddl'/><category term='caching'/><category term='mono'/><category term='Gaurav'/><category term='referral'/><category term='HyderabadTechies'/><category term='Shuby'/><category term='Silverlight'/><title type='text'>.Net Stuff from My Desktop</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default?start-index=101&amp;max-results=100'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>124</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4943797491084152388</id><published>2012-01-10T01:37:00.000+05:30</published><updated>2012-01-23T01:21:32.979+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Service Locator'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><title type='text'>Simple example of ServiceLocator - with Tighted Coupling, Abstraction and Generic Typed Service Locator</title><content type='html'>Simple example of ServiceLocator - with Tighted Coupling, Abstraction and Generic Typed Service Locator&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="https://gist.github.com/1584635.js"&gt; &lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4943797491084152388?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4943797491084152388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2012/01/simple-example-of-servicelocator-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4943797491084152388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4943797491084152388'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2012/01/simple-example-of-servicelocator-with.html' title='Simple example of ServiceLocator - with Tighted Coupling, Abstraction and Generic Typed Service Locator'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6897571348415020230</id><published>2011-11-11T01:01:00.001+05:30</published><updated>2012-01-23T01:20:16.751+05:30</updated><title type='text'>Install Git for Windows : A step-by-step</title><content type='html'>&lt;h3&gt;What is GitHub?&lt;/h3&gt;&lt;b&gt;In April-2008, GitHub&lt;/b&gt; was launched. GitHub is nothing but Web Based Hosting Service, which provides you to create your own repositories of softwares etc. GitHub is offering both Free and Paid accounts for 'Open Sources' projects In 2010 it named as 'GitHub Inc.'GitHub which is running on the software has written in &lt;b&gt;'Ruby On Rails'&lt;/b&gt; To start with GitHub repositories you just need to install GitHub software : &lt;br /&gt;&lt;ol&gt;&lt;li&gt;Git for Windows&lt;/li&gt;&lt;li&gt;Git for Windows7&lt;/li&gt;&lt;li&gt;Git for Linux&lt;/li&gt;&lt;li&gt;Git for Mac&lt;/li&gt;&lt;/ol&gt;I am going to explain 'How to configure Git for Windows' as rest of above flavore are beyond the scope of this article.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;h4&gt;Install Git&lt;/h4&gt;For any software its mandatory that you have proper environment and pre-requisite to meet the initial setup of the software. &lt;br /&gt;First of all, I prefer you get registered your self here : &lt;a href="http://github.com/garora/" target="_blank"&gt;GitHub&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In case of our first install to Git for Windows, we need to download the setup.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Browse to link : &lt;a href="http://code.google.com/p/msysgit/" target="_blank"&gt;msysgit&lt;/a&gt; &lt;br /&gt;    Here you can get more help as this is the project which is maintained by number of developers say volunteers and you can  also work as a volunteer, if you see any modifcations.&lt;br /&gt;  &lt;/li&gt;&lt;li&gt;Go to Download page&lt;/li&gt;&lt;li&gt;Download the latest stable release, I prefer Git netinstall - refer to image&lt;br /&gt;  &lt;img alt="Git-install" src="http://www.dotnetspider.com/attachments/Resources/43354-1043-Git-install.png" style="padding: 10px;" /&gt; &lt;br /&gt;  &lt;/li&gt;&lt;li&gt;Run above install and setup Git in folder say &lt;b&gt;d:/msysgit&lt;/b&gt; this is the folder I used to install git and refer  through-out this article.&lt;/li&gt;&lt;li&gt;Create shortcut of Git for your future use  &lt;br /&gt;  After install you will be notified on the console Git windows to your next task, &lt;br /&gt;  here I prefer to create a shortcut to your desktop of Pin to your Startup so, you can use later.&lt;br /&gt;  &lt;img alt="Git-Create Shortcut" src="http://www.dotnetspider.com/attachments/Resources/43354-1045-Git-Create-SHortcut.png" style="padding: 10px;" /&gt;&lt;br /&gt;  &lt;br /&gt;  Pining shortcut to TaskBar/Starup - Jusr right click over your desktop Git shirtcut created in above step,  now pin to whereever you want. &lt;br /&gt;  &lt;img alt="Git - pinning shortcut" src="http://www.dotnetspider.com/attachments/Resources/43354-1047-Git-Pinning-Shortcut.png" style="padding: 10px;" /&gt;  &lt;/li&gt;&lt;li&gt;Configuring Git settings : &lt;br /&gt;  Next step to configure Git to use with your Windows &lt;br /&gt;- git config --global user.name "your username" &lt;br /&gt;   - git config --global user.email "your email" &lt;br /&gt;   &lt;img alt="Git-Config Global" src="http://www.dotnetspider.com/attachments/Resources/43354-1048-Git-Config-Global.png" style="padding: 10px;" /&gt; &lt;br /&gt;   In above, you are saying Git configuration that just work for the guy with above email and username   &lt;/li&gt;&lt;li&gt;Now, its time to verify the above config :) &lt;br /&gt;Go to your user a/c - here you can check the above setting using &lt;b&gt;Notepad or notepadd++&lt;/b&gt; &lt;br /&gt;   &lt;img alt="Git-open config using notepad" src="http://www.dotnetspider.com/attachments/Resources/43354-10410-Git-Open-config-using-notepad.png" style="padding: 10px;" /&gt; &lt;br /&gt;    &lt;img alt="Git-open config using notepad++" src="http://www.dotnetspider.com/attachments/Resources/43354-10411-Git-open-config-using-notepadpp.png" style="padding: 10px;" /&gt; &lt;br /&gt;   Here, you just need to open '.gitconfig' file by right-clicking either in notepad or in notepad++   &lt;br /&gt;   I prefer you to install &lt;b&gt;notepad++ refer to my earlier post 'How to setup notepad++'&lt;/b&gt;   &lt;/li&gt;&lt;li&gt;In above, it is done, if you just want to use Git for your versioning of files. You can leave here, &lt;br /&gt;  and go for my another post &lt;b&gt;How to configure Git Repository?&lt;/b&gt;&lt;/li&gt;&lt;li&gt;But, if you want to use Git much more as above, do follow these steps : &lt;br /&gt;  MergeTool - a tool merge your changes within branches and files and many more as showing differences between two versions etc. &lt;br /&gt;  I prefer, you to install &lt;b&gt;WinMerge&lt;/b&gt; as an external merge tool - refer to my other post &lt;b&gt;How to setup 'WinMerge' for Windows'&lt;/b&gt;&lt;br /&gt;  &lt;bt&gt;&lt;bt&gt;  Follow above step to open config file with &lt;b&gt;notepad++&lt;/b&gt; &lt;br /&gt;  Now, type following code in your opened document : &lt;br /&gt;&lt;br /&gt;    &lt;blockquote&gt;[merge]    tool = winmerge   [mergetool "winmerge"]    cmd winmerge.sh "$BASE" "$LOCAL"    keepBackup = false    trustExitCode = false  &lt;/blockquote&gt;&lt;br /&gt;    &lt;img alt="Git merge tool" src="http://www.dotnetspider.com/attachments/Resources/43354-10413-Git-Defining-merge-tool.png" style="padding: 10px;" /&gt;  &lt;br /&gt;&lt;br /&gt;  Above, [merge] - defines a name of external tool i.e winmerge &lt;br /&gt; $BASE $LOCAL are the macros saying files need to merge, for more detail refer to  my earlier post '&lt;b&gt;How to setup 'WinMerge' for Windows'&lt;/b&gt;'.  &lt;/bt&gt;&lt;/bt&gt;&lt;/li&gt;&lt;li&gt;In above step, we have written &lt;b&gt;winmerge.sh&lt;/b&gt; now, we need to add this external command &lt;br /&gt;  Go to your Git installed path, remember we have installed Git at &lt;i&gt;D:/msysgit/&lt;/i&gt;  &lt;br /&gt; &lt;img alt="Git addingwinmergedotsh" src="http://www.dotnetspider.com/attachments/Resources/43354-10415-Git-adding-winmergedotsh-command.png" style="padding: 10px;" /&gt;  &lt;br /&gt;  now, right click on &lt;i&gt;winmerge.sh&lt;/i&gt; file with notepad++&lt;br /&gt;  &lt;img alt="git openwinmergerdotshwithnotepad++" src="http://www.dotnetspider.com/attachments/Resources/43354-10416-Git-open-winmergedotsh-with-notep.png" style="padding: 10px;" /&gt;  &lt;br /&gt;  &lt;br /&gt;  Add following lines in the blank opened document :  &lt;br /&gt;  &lt;img alt="Git setting winmerge arguments" src="http://www.dotnetspider.com/attachments/Resources/43354-10417-Git-Setting-Winmerge-arguments.png" style="padding: 10px;" /&gt;  &lt;br /&gt;  &lt;br /&gt;  &lt;blockquote&gt;echo Launching Winmerger $1 $2  "C:\Program Files (x86)\WinMerge\WinMergeU.exe" -e -u -dl "Original" -dr "Modified" "$1" "$2"  &lt;/blockquote&gt;&lt;br /&gt;  &lt;i&gt;I am not going in deep explanation of above lines as this is beyond the scope of this article. &lt;/i&gt;&lt;br /&gt;  close and save above document.  &lt;/li&gt;&lt;li&gt;Next step, to tell Git about the external Merge Tool &lt;br /&gt;  Go back and click the Git shortcut to open Git Console Window &lt;br /&gt;  shoot following command there :  &lt;br /&gt;  &lt;img alt="git setting up winmerge as external tool" src="http://www.dotnetspider.com/attachments/Resources/43354-10418-Git-setting-up-winmerge-as-extern.png" style="padding: 10px;" /&gt;  &lt;br /&gt;  &lt;blockquote&gt;set GIT_EXTERNAL_DIFF = winmerge.sh  &lt;/blockquote&gt;&lt;br /&gt;  &lt;/li&gt;&lt;li&gt;Its all setup here now, you can start you Git repository with the tool Git.&lt;/li&gt;&lt;li&gt;To quit from Git Console window just type &lt;i&gt;exit&lt;/i&gt; and press enter.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Hope, you enjoyed reading my above article. There are many more about Git. Happy programming!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6897571348415020230?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6897571348415020230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/11/install-git-for-windows-step-by-step.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6897571348415020230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6897571348415020230'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/11/install-git-for-windows-step-by-step.html' title='Install Git for Windows : A step-by-step'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2307783178910497629</id><published>2011-10-29T15:17:00.000+05:30</published><updated>2012-01-23T01:16:39.979+05:30</updated><title type='text'>How to create Gist to make snippet more powerful</title><content type='html'>&lt;b&gt;What is Gist?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Gist&lt;/b&gt; are repositories of &lt;b&gt;github&lt;/b&gt;. These can be created as Public or Private repositories.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is the best way to make your snippet safe and available to all the world through a common url.&lt;b&gt;What is GitHub?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In April-2008, GitHub was launched. GitHub is nothing but &lt;b&gt;Web Based Hosting Service&lt;/b&gt;, which provides you to create your own repositories of softwares etc. GitHub is offering both Free and Paid accounts for 'Open Sources' projects In 2010 it named as 'GitHub Inc.'GitHub which is running on the software has written in 'Ruby On Rails' To start with GitHub repositories you just need to install GitHub software :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt; &lt;a href="http://goo.gl/a26Nn" target="_blank"&gt;Git for Windows&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href="http://goo.gl/l5Ixr" target="_blank"&gt;Git for Windows7&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href="http://goo.gl/055jS" target="_blank"&gt;Git for Linux&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href="http://goo.gl/zWEQV" target="_blank"&gt;Git for Mac&lt;/a&gt;&lt;/li&gt;&lt;i&gt;Choose your flavor and start with Git. I will discuss in detail regarding GitHub in another post.&lt;/i&gt;&lt;b&gt;What should I do to create Gist?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Its as simple as you have created your own account in dotnetspider.com, following are the steps which are describing the answer:&lt;br /&gt;&lt;li&gt;Surf &lt;a href="http://goo.gl/2yU6D" target="_blank"&gt; GitHub &lt;/a&gt;&lt;/li&gt;&lt;li&gt;Create you GitHub account&lt;/li&gt;&lt;li&gt;Supply your profile summary&lt;/li&gt;&lt;br /&gt;Now, you have ground to create Gist.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How to create and Share Gist?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As GitHub officialy defined Gist is :&lt;i&gt;a simple way to share snippets and pastes with others. All gists are git repositories, so they are automatically versioned, forkable and usable as a git repository.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Followings are the steps to create your own Gist:&lt;br /&gt;&lt;li&gt;Login to GitHub&lt;/li&gt;&lt;li&gt;Reach at : &lt;a href="http://goo.gl/MeUoO"&gt;Gist&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Here you can provide the two mandatory things : - Gist Description - Gist file name and optionally you can Select Language else language will be detected from file name extension   eg. if you choose - myfile.cs - it will be considered as C# language Gist and so on...&lt;/li&gt;&lt;li&gt;You can write in the editor of Gist or can copy/paste your existing snippet&lt;/li&gt;&lt;li&gt;Now create Private or Public Gist by pressing specific button.&lt;/li&gt;&lt;li&gt;You can Add more files by clicking 'Add another file' link&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;When you have done with creating you will be directed to Gist url link. By the same you can share your Gist through-out the world.&lt;br /&gt;&lt;li&gt; later on you can see your all Gits from &lt;a href="http://goo.gl/vKEtx" target="_blank"&gt;My Gist&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Live Example:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Follow the above mentioned steps and reach to your Gist home.In the following Gist, I tried to show a simple snippet "How to use Library from Console?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There are certain options by which you can compile files with different types like class library .dll or executable files .exe etc.&lt;br /&gt;&lt;li&gt; /t :exe - Produces a Console Application, which is the default option&lt;/li&gt;&lt;li&gt; /t :library - Produces a Class Library with its Manifest&lt;/li&gt;&lt;li&gt; /t :module  - Produces a component but without manifest&lt;/li&gt;&lt;li&gt; /t :winexe  - Produces a Windows application [not a console window]&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;The above list is very limited to the scope of this article.With the help of switch option(s) you can do this. /t :library will generate the class library with its manifest and this will call at runtime. With the use of /r switch you can call the other class library file to any console application.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Following is the Gist : &lt;/b&gt;&lt;script src="https://gist.github.com/1324075.js"&gt; &lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Benefits of Gits:&lt;/b&gt;&lt;br /&gt;&lt;li&gt;Version control&lt;/li&gt;&lt;li&gt;One roof for all snippets&lt;/li&gt;&lt;li&gt;No need to update the snippet whereever you use, it will be reflected with new code automatically.&lt;/li&gt;Thanks for reading this article. Your feedback is highly recommendable.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2307783178910497629?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2307783178910497629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/how-to-create-gist-to-make-snippet-more.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2307783178910497629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2307783178910497629'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/how-to-create-gist-to-make-snippet-more.html' title='How to create Gist to make snippet more powerful'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5926919019425938653</id><published>2011-10-29T12:40:00.001+05:30</published><updated>2012-01-23T01:15:01.629+05:30</updated><title type='text'>What is TDD Kata?</title><content type='html'>I wasn't aware untill I read this post : &lt;a href="http://goo.gl/pKIzT" target="_blank"&gt; TDD Katas&lt;/a&gt;.&amp;nbsp; &lt;br /&gt;&lt;a href="http://goo.gl/x4b11" target="_blank"&gt;Joseph Bulger&lt;/a&gt; is one who encourage me to start this, thanks Jose.&lt;br /&gt;I am still looking for more explanatory articles/lectures/things for TDD Kata. &lt;br /&gt;&lt;br /&gt;Here is what my understanding for the same with reference to Osherove and Jose's writing:&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I Refered to Wikipedia and found that :&lt;br /&gt;&lt;a href="http://goo.gl/DdWGr" target="_blank"&gt;&lt;br /&gt;"Kata is a Japnese words and describing detailed choreographed patterns of movements practised either solo or in pairs."&lt;/a&gt; It is well explained by Bob Martin &lt;a href="http://goo.gl/E6zlD" target="_blank"&gt;here &lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;At this point, the question is what does this have to do with TDD [i.e Test Driven Development]?&lt;br /&gt;In simple words, just imagine you are the well-known trainer and you are doing lot of mentoring work, now is it possible to make everyone aware from whole process how you implement or design the process.&lt;br /&gt;In sure-shot "NO". So, here is the answer, Kata is a step-by-step learning to lead ahead with TDD. &lt;br /&gt;&lt;br /&gt;I am still a learner at the time of writting this stuff. My purpose of this post is just share my thoughts and steps towards TDD Katas. I love to break-down the steps of my development,o, I found kata is the best for me.&lt;br /&gt;&lt;br /&gt;Wait and watch my stuffs at GitHub : &lt;a href="http://goo.gl/5yPU0" target="_blank"&gt;Gaurav Arora&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5926919019425938653?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5926919019425938653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/what-is-tdd-kata.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5926919019425938653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5926919019425938653'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/what-is-tdd-kata.html' title='What is TDD Kata?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1099679118980414240</id><published>2011-10-29T10:01:00.000+05:30</published><updated>2012-01-23T01:22:13.532+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='snippet'/><category scheme='http://www.blogger.com/atom/ns#' term='Gist'/><title type='text'>My first Gist at GitHub</title><content type='html'>I really love to write snippet to define the code simpler and explain the meaning of particular tech themes. I got GitHub account and I glad to write my first Gist on this :&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="https://gist.github.com/1324075.js"&gt; &lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1099679118980414240?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1099679118980414240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/my-first-gist-at-github.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1099679118980414240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1099679118980414240'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/10/my-first-gist-at-github.html' title='My first Gist at GitHub'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2534979440012447302</id><published>2011-08-06T13:33:00.000+05:30</published><updated>2011-08-06T13:33:46.737+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='unit testing'/><category scheme='http://www.blogger.com/atom/ns#' term='Nunit'/><category scheme='http://www.blogger.com/atom/ns#' term='HyderabadTechies'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Unit Testing Using NUnit</title><content type='html'>&lt;div style="text-align: left; width: 425px;"&gt;&lt;object height="355" style="margin: 0px;" width="425"&gt;&lt;param name='movie' value='http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=unittestingusingnunit-13126169822869-phpapp01-110806025217-phpapp01&amp;amp;stripped_title=unit-testing-using-n-unit' /&gt;&lt;param name='allowFullScreen' value='true'/&gt;&lt;param name='allowScriptAccess' value='always'/&gt;&lt;embed src='http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=unittestingusingnunit-13126169822869-phpapp01-110806025217-phpapp01&amp;amp;stripped_title=unit-testing-using-n-unit' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='425' height='355'&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/0321503627?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Growing Object-Oriented Software, Guided by Tests&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0321503627" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2534979440012447302?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2534979440012447302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/08/unit-testing-using-nunit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2534979440012447302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2534979440012447302'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2011/08/unit-testing-using-nunit.html' title='Unit Testing Using NUnit'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-7524778645739526750</id><published>2010-08-26T16:20:00.000+05:30</published><updated>2010-08-26T16:20:20.757+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='silverlight for windows phone'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Now use Silverlight for Windows Phone</title><content type='html'>Its a really good news for Silverlight enthusiast and who love to highly work with Silverlight. Now you can work with Silverlight for Windows Phone&lt;br /&gt;&lt;br /&gt;It also supports core capabilities in managed .Net code with XAML one can do&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt; High quality video streaming, codec etc.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt; zoom facility&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt; vector method the most exciting feature&lt;br /&gt;&lt;br /&gt;It can also utilize the XNA framework for media also can access Xbox Live.&lt;br /&gt;&lt;br /&gt;As a developer you just need to develop a silverlight application and package it to Windows Phone fo ruse.&lt;br /&gt;&lt;a href="http://www.amazon.com/Silverlight-1-0-Unleashed-Adam-Nathan/dp/0672330075?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Silverlight 1.0 Unleashed&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0672330075" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&amp;nbsp;&lt;a href="http://www.amazon.com/Professional-Silverlight-4-Jason-Beres/dp/0470650923?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Professional Silverlight 4&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0470650923" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&amp;nbsp;&lt;a href="http://www.amazon.com/Microsoft-Silverlight-Step/dp/073563887X?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Microsoft Silverlight 4 Step by Step (Step By Step (Microsoft))&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=073563887X" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;br /&gt;Here is the complete story : http://www.silverlight.net/getstarted/devices/windows-phone/&lt;br /&gt;&lt;br /&gt;If you are interested you can start from here with download : &lt;a href="http://go.microsoft.com/fwlink/?LinkID=185584" target="_blank"&gt;Silverlight for Windows Phone&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also check mycity portal : &lt;a href="http://mynangal.com/" rel="follow"&gt;A city of nature&lt;/a&gt;&lt;/li&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-7524778645739526750?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/7524778645739526750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/08/now-use-silverlight-for-windows-phone.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7524778645739526750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7524778645739526750'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/08/now-use-silverlight-for-windows-phone.html' title='Now use Silverlight for Windows Phone'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4970053980278397422</id><published>2010-07-17T17:56:00.000+05:30</published><updated>2010-07-17T17:56:00.019+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Jalfa Mata'/><category scheme='http://www.blogger.com/atom/ns#' term='Tourism in Nangal'/><category scheme='http://www.blogger.com/atom/ns#' term='Transportation'/><category scheme='http://www.blogger.com/atom/ns#' term='Religious places'/><category scheme='http://www.blogger.com/atom/ns#' term='Baba Balak Nath'/><title type='text'>How to explore Nangal Dam and make it a tourist place?</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Nangal Dam is a small city situated in District Roopnagar, Punjab. Nangal is surrounded with Shivalik Hills and a very natural city. Its also known as city of nature.&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Ofcourse, Nangal needs some promotions to explore among the world. To explore Nangal we can take many steps by which we can explore &lt;a href="http://mynangal.com/about-nangal.html"&gt;Nangal Dam&lt;/a&gt; to make it a famous tourist place:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;1. Promote and make more spots around Bhakra Dam&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;2. Nangal Dam - its a main focus area of tourism&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;3. Should be more informative&amp;nbsp;centers&amp;nbsp;in Nangal&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;4. Promote&amp;nbsp;religious&amp;nbsp;places&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;5. Start events in Templates like Jalfa Mata Mandir&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;6. Surrounded areas like &lt;a href="http://mynangal.com/tourism-in-nangal/47-religious-places/123-baba-balak-nath-mandir-nangal-ropar-punjab.html"&gt;Baba Balak Nath Mandir&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;There are many thinks which need to revise to promote Nangal as a Tourism city like availability of&amp;nbsp;Transportation. Its great if Punjab Govt. Get in Nangal and take some steps to promote it as a Tourist place.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4970053980278397422?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4970053980278397422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/07/how-to-explore-nangal-dam-and-make-it.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4970053980278397422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4970053980278397422'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/07/how-to-explore-nangal-dam-and-make-it.html' title='How to explore Nangal Dam and make it a tourist place?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6821211629336118025</id><published>2010-06-23T13:47:00.000+05:30</published><updated>2010-06-23T13:47:43.589+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mynangal.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Prizes'/><category scheme='http://www.blogger.com/atom/ns#' term='gift'/><title type='text'>Inderjeet Singh Dhillon : winner of thought of the month m/o May-2010</title><content type='html'>Inderjeet Singh Dhillon announced as&amp;nbsp;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;span style="font-size: 12pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;a class="contentpagetitle" href="http://www.mynangal.com/announcement/283-winners-of-the-best-thoughts-for-mo-may-2010.html" style="color: #46ac13; text-decoration: underline;"&gt;Winners of the best thoughts for m/o May-2010&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;Dhillon is an active member of &lt;a href="http://mynangal.com/"&gt;mynangal&lt;/a&gt;. He has submitted many articles and knowledgeable thoughts in the site.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;a href="http://www.amazon.com/PQI-Intelligent-i810-waterproof-characteristics/dp/B001INJZYU?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;PQI 8GB Intelligent Stick USB Flash Drive i810 Plus. Smallest USB flash drive in the world, waterproof and dust-proof characteristics.&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=B001INJZYU" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;He has awarded with a gift of PEN DRIVE. Mr. S.S. Chug, webmaster of mynanagl awarded the gift on 21.06.2010.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;Here is the complete story of the award ceremony :&amp;nbsp;&lt;/span&gt;&lt;a href="http://www.mynangal.com/announcement/346-gifts-awarded-to-winners-of-the-best-thoughts-for-mo-may-2010.html"&gt;http://www.mynangal.com/announcement/346-gifts-awarded-to-winners-of-the-best-thoughts-for-mo-may-2010.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lets congratulate to Mr. Dhillon on his achievement.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6821211629336118025?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6821211629336118025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/inderjeet-singh-dhillon-winner-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6821211629336118025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6821211629336118025'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/inderjeet-singh-dhillon-winner-of.html' title='Inderjeet Singh Dhillon : winner of thought of the month m/o May-2010'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8283060541318532687</id><published>2010-06-22T11:18:00.000+05:30</published><updated>2010-06-22T11:18:28.953+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='awards'/><category scheme='http://www.blogger.com/atom/ns#' term='referral'/><category scheme='http://www.blogger.com/atom/ns#' term='mywindosclub'/><title type='text'>Win amazing prizes at mywindowsclub.com</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;I am very much excited to share a great news and a secret of winning daily, weekly prizes with less work.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;Yes, this is possible by surfing and posting fun, loving Windows based content on &lt;/span&gt;&lt;a href="http://mywindowsclub.com/"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;mywindowsclub&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;Imagine everything is free. Its not just a content its a dream of everyone to get a Diamond. Some highlighted awards are :&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;a href="http://www.amazon.com/Apple-touch-Generation-NEWEST-MODEL/dp/B002M3SOC4?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Apple iPod touch 32 GB (3rd Generation) NEWEST MODEL&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=B002M3SOC4" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;Diamond&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;Cash Bonus&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;So, lets start from today, I already started a while ago.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;For more info refer to :&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;&lt;a href="http://www.mywindowsclub.com/forum/ViewForum.aspx?ForumId=275"&gt;http://www.mywindowsclub.com/forum/ViewForum.aspx?ForumId=275&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;iframe align="left" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=netstufromyde-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=B002FA3R08&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="align: left; height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8283060541318532687?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8283060541318532687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/win-amazing-prizes-at-mywindowsclubcom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8283060541318532687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8283060541318532687'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/win-amazing-prizes-at-mywindowsclubcom.html' title='Win amazing prizes at mywindowsclub.com'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-7278043894906267870</id><published>2010-06-01T18:31:00.000+05:30</published><updated>2010-06-01T18:31:11.336+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='DNS-MVM'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Announced DNS-MVM : 2nd Time</title><content type='html'>I am very excited to share the news with you all that Dotnetspider :Microsoft .Net Technical Community announced me as a Most Valuable Member for April-2010.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_PZLBlRUKSSw/TAUEUiROmSI/AAAAAAAAAE0/KFRQqzFEo1Q/s1600/Gaurav+Arora+-+MVM+Certificate.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/_PZLBlRUKSSw/TAUEUiROmSI/AAAAAAAAAE0/KFRQqzFEo1Q/s640/Gaurav+Arora+-+MVM+Certificate.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Its a second time when I got this honor.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/CompTIA-Certification-Seventh-220-701-220-702/dp/0071701338?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;CompTIA A+ Certification All-in-One Exam Guide, Seventh Edition (Exams 220-701 &amp;amp; 220-702)&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0071701338" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;br /&gt;&lt;br /&gt;For more info :&amp;nbsp;&lt;a href="http://www.dotnetspider.com/forum/249135-Winners-MVM-award-April.aspx"&gt;http://www.dotnetspider.com/forum/249135-Winners-MVM-award-April.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-7278043894906267870?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/7278043894906267870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/announced-dns-mvm-2nd-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7278043894906267870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7278043894906267870'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/06/announced-dns-mvm-2nd-time.html' title='Announced DNS-MVM : 2nd Time'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_PZLBlRUKSSw/TAUEUiROmSI/AAAAAAAAAE0/KFRQqzFEo1Q/s72-c/Gaurav+Arora+-+MVM+Certificate.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1494923501558199967</id><published>2010-05-26T16:48:00.002+05:30</published><updated>2010-05-26T17:17:07.822+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='nextgen web'/><category scheme='http://www.blogger.com/atom/ns#' term='indimix2010'/><title type='text'>Next Generation Website : IndiMiX2010</title><content type='html'>&lt;a href="http://apac.ineta.org/inetago/page.aspx?to=1&amp;amp;ug=HyderabadTechies&amp;amp;org=INETAAPAC" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://apac.ineta.org/inetago/page.aspx?to=1&amp;amp;ug=HyderabadTechies&amp;amp;org=INETAAPAC"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://apac.ineta.org/inetago/page.aspx?to=1&amp;amp;ug=HyderabadTechies&amp;amp;org=INETAAPAC"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://apac.ineta.org/inetago/page.aspx?to=1&amp;amp;ug=HyderabadTechies&amp;amp;org=INETAAPAC"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" height="400" src="http://1.bp.blogspot.com/_PZLBlRUKSSw/S_0FKpfj1KI/AAAAAAAAAEs/M9ML5jftaAg/s400/indimix2010.PNG" width="367" /&gt;&lt;/div&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.amazon.com/Creating-Web-Site-Missing-Manual/dp/0596520972?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969" target="_blank"&gt;Creating a Web Site: The Missing Manual&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0596520972" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1494923501558199967?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1494923501558199967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/05/next-generation-website-indimix2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1494923501558199967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1494923501558199967'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/05/next-generation-website-indimix2010.html' title='Next Generation Website : IndiMiX2010'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_PZLBlRUKSSw/S_0FKpfj1KI/AAAAAAAAAEs/M9ML5jftaAg/s72-c/indimix2010.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2120379855859162517</id><published>2010-04-28T19:57:00.000+05:30</published><updated>2010-04-28T19:57:40.193+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mynangal.com'/><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='Gems of Nangal'/><title type='text'>Nangal Videos : Share Videos</title><content type='html'>&lt;div&gt;&lt;b&gt;Share videos of Nangal at &lt;a href="http://mynangal.com/nangal-videos.html"&gt;mynangal.com&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/E8FhC-35xGM&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/E8FhC-35xGM&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://mynangal.com/index.php?option=com_hwdvideoshare&amp;amp;Itemid=70" title="Mycity MyNangal"&gt;Mycity MyNangal&lt;/a&gt;&lt;/center&gt;&lt;center&gt;&lt;a href="http://www.amazon.com/Sherlock-Holmes-Robert-Downey-Jr/dp/B001OQCV6A?ie=UTF8&amp;amp;tag=netstufromyde-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969" imageanchor="1" target="_blank"&gt;&lt;img alt="Sherlock Holmes" src="http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=B001OQCV6A&amp;amp;tag=netstufromyde-20" /&gt;&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=netstufromyde-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=B001OQCV6A" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /&gt;&lt;/center&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2120379855859162517?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2120379855859162517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/04/nangal-videos-share-videos.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2120379855859162517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2120379855859162517'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/04/nangal-videos-share-videos.html' title='Nangal Videos : Share Videos'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8375487955101635918</id><published>2010-04-27T16:49:00.000+05:30</published><updated>2010-04-27T16:49:35.248+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='DNS-MVM'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Dotnetspider.com - MVM second time</title><content type='html'>Today, I am much excited to share the moment, I selected once again DNS-MVM.&lt;br /&gt;Its my honor to be an MVM of such Technical community.&lt;br /&gt;&lt;br /&gt;&lt;iframe align="left" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=netstufromyde-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=B0039829OK&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="align: left; height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;I must say my thanks to all my reader, students and all DNS'ians.&lt;br /&gt;&lt;br /&gt;For more details :&amp;nbsp;&lt;a href="http://www.dotnetspider.com/forum/249135-Winners-MVM-award-April.aspx"&gt;http://www.dotnetspider.com/forum/249135-Winners-MVM-award-April.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8375487955101635918?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8375487955101635918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/04/dotnetspidercom-mvm-second-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8375487955101635918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8375487955101635918'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/04/dotnetspidercom-mvm-second-time.html' title='Dotnetspider.com - MVM second time'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8787694974739076098</id><published>2010-03-02T14:19:00.000+05:30</published><updated>2010-03-02T14:19:15.211+05:30</updated><title type='text'>Got letter of Member of the year award</title><content type='html'>Some days ago, I got appreciation as a Member of the year from DNS check the previous post :&amp;nbsp;&lt;a href="http://stuff4mdesktop.blogspot.com/2010/01/member-of-year-award-from-dotnetspider.html"&gt;http://stuff4mdesktop.blogspot.com/2010/01/member-of-year-award-from-dotnetspider.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Yesterday, I got a soft copy for the appreciation and sharing with all you guys.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_PZLBlRUKSSw/S4zQ8CqTB9I/AAAAAAAAAEc/2ZF5WMZXUcY/s1600-h/Gaurav+Arora(Member+of+the+year+2009).jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_PZLBlRUKSSw/S4zQ8CqTB9I/AAAAAAAAAEc/2ZF5WMZXUcY/s320/Gaurav+Arora(Member+of+the+year+2009).jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8787694974739076098?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8787694974739076098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/03/got-letter-of-member-of-year-award.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8787694974739076098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8787694974739076098'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/03/got-letter-of-member-of-year-award.html' title='Got letter of Member of the year award'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_PZLBlRUKSSw/S4zQ8CqTB9I/AAAAAAAAAEc/2ZF5WMZXUcY/s72-c/Gaurav+Arora(Member+of+the+year+2009).jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8418644943632804612</id><published>2010-02-14T15:02:00.001+05:30</published><updated>2010-02-14T15:02:42.986+05:30</updated><title type='text'>Silverlight Demos For Beginners</title><content type='html'>Check out this SlideShare Presentation: &lt;div style="width:425px;text-align:left" id="__ss_3167707"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/g_arora/silverlight-demos-for-beginners" title="Silverlight Demos For Beginners"&gt;Silverlight Demos For Beginners&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=silverlightdemosforbeginners-100213100011-phpapp02&amp;stripped_title=silverlight-demos-for-beginners" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=silverlightdemosforbeginners-100213100011-phpapp02&amp;stripped_title=silverlight-demos-for-beginners" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/g_arora"&gt;Gaurav Arora&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8418644943632804612?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8418644943632804612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/silverlight-demos-for-beginners.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8418644943632804612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8418644943632804612'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/silverlight-demos-for-beginners.html' title='Silverlight Demos For Beginners'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-537888104508851395</id><published>2010-02-13T19:48:00.001+05:30</published><updated>2010-02-13T19:48:20.572+05:30</updated><title type='text'>Wcf Transaction Handling</title><content type='html'>Check out this SlideShare Presentation: &lt;div style="width:425px;text-align:left" id="__ss_3167472"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/g_arora/wcf-transaction-handling" title="Wcf Transaction Handling"&gt;Wcf Transaction Handling&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=wcftransactionhandling-100213073034-phpapp02&amp;stripped_title=wcf-transaction-handling" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=wcftransactionhandling-100213073034-phpapp02&amp;stripped_title=wcf-transaction-handling" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/g_arora"&gt;Gaurav Arora&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-537888104508851395?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/537888104508851395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/wcf-transaction-handling.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/537888104508851395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/537888104508851395'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/wcf-transaction-handling.html' title='Wcf Transaction Handling'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-7717884043108159936</id><published>2010-02-06T23:47:00.002+05:30</published><updated>2010-02-07T00:07:07.818+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='2009'/><category scheme='http://www.blogger.com/atom/ns#' term='Monthly Winner Award - December'/><title type='text'>Got appreciation copy for Monthly Winner Award - December,2009-2010</title><content type='html'>Today, I got my most awaiting appreciation soft copy of&amp;nbsp;&lt;b&gt;&lt;u&gt;Monthly Winner Award - December,2009-2010&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_PZLBlRUKSSw/S22yAW-uTsI/AAAAAAAAAEM/Ck8Rm1DX0_c/s1600-h/Gaurav+Arora+(Monthly+Winner).jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://3.bp.blogspot.com/_PZLBlRUKSSw/S22yAW-uTsI/AAAAAAAAAEM/Ck8Rm1DX0_c/s400/Gaurav+Arora+(Monthly+Winner).jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-7717884043108159936?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/7717884043108159936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/got-appreciation-copy-for-monthly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7717884043108159936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7717884043108159936'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/02/got-appreciation-copy-for-monthly.html' title='Got appreciation copy for Monthly Winner Award - December,2009-2010'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_PZLBlRUKSSw/S22yAW-uTsI/AAAAAAAAAEM/Ck8Rm1DX0_c/s72-c/Gaurav+Arora+(Monthly+Winner).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8027733075711468247</id><published>2010-01-29T20:59:00.000+05:30</published><updated>2010-01-29T20:59:34.857+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><category scheme='http://www.blogger.com/atom/ns#' term='Msdotnetheaven'/><title type='text'>msdotnetheaven-Lets share knowledge</title><content type='html'>&lt;a href="http://we%20are%20one%20of%20you%20and%20want%20to%20explore%20techi%20stuffs%20throughout%20the%20world.%20we%20started%20a%20journey%20and%20there%20are%20miles%20away%20to%20do%20the%20same%20and%20not%20possible%20without%20help%20of%20you%20guys./"&gt;&lt;strong&gt;Msdotnetheaven&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; is a community started by a Group of Techies&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;"We are one of you and want to explore Techi stuffs throughout the world. We started a journey and there are miles away to do the same and not possible without help of you guys."&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;I recoomend to join the community&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8027733075711468247?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8027733075711468247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/msdotnetheaven-lets-share-knowledge.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8027733075711468247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8027733075711468247'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/msdotnetheaven-lets-share-knowledge.html' title='msdotnetheaven-Lets share knowledge'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1771882805059522548</id><published>2010-01-29T20:54:00.000+05:30</published><updated>2010-01-29T20:54:21.956+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='dns-annual member'/><category scheme='http://www.blogger.com/atom/ns#' term='Dotnetspider'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Member of The Year Award from Dotnetspider</title><content type='html'>Hi guys!&lt;br /&gt;&lt;br /&gt;In these days I am very much busy with other tasks so, have very little time to share views with you.&lt;br /&gt;&lt;br /&gt;In between I got recognition from Microsoft technical Community Dotnetspider.com.&lt;br /&gt;&lt;br /&gt;I selected as a &lt;a href="http://www.dotnetspider.com/forum/238708-Winners-Semi-Annual-Gifts-Annual-Certificates.aspx"&gt;Member of the Year Award&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Today, I am very excited to get this news . Thanks to all of you because my readers are the judges who build me for this kind of rewards/awards.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1771882805059522548?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1771882805059522548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/member-of-year-award-from-dotnetspider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1771882805059522548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1771882805059522548'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/member-of-year-award-from-dotnetspider.html' title='Member of The Year Award from Dotnetspider'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6538894892177977134</id><published>2010-01-27T18:11:00.000+05:30</published><updated>2010-01-27T18:11:24.161+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='microsoft user group'/><category scheme='http://www.blogger.com/atom/ns#' term='jaipurmentor.com'/><title type='text'>Microsoft User Group Jaipur : jaipurmentor.com</title><content type='html'>Today I searched for &lt;a href="http://www.jaipurmentor.com/"&gt;Microsoft User Group&lt;/a&gt; and found that there is a new User group of Jaipur launched by &lt;a href="http://www.google.com/profiles/meetuchoudhary"&gt;Meetu Choudhary&lt;/a&gt; who is the MVP.&lt;br /&gt;&lt;br /&gt;Front page is saying “&lt;em&gt;We intent helping and collaborating with all .Net engineers in Jaipur. Are you one of them? If you are, do register. Together we need to improve and bring Jaipur on the .Net map of the world. You might be a blogger, a forum addict, a .Net enthusiast, a Software enthusiast, a Technology enthusiast. Everyone is welcome to join and contribute. We will be having experts from the field presenting on different topics. Our forums will be moderated with .Net and Software experts to ensure you are answered promptly and with the correct solution. You can contribute to the forums by helping other fellow colleagues. You contribution will be recognized not only on this site, but also in the entire .Net circle. We require experts to help us in our endeavor.”&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;I found the group interesting and it has forums also. As per the look and feel I found the theme of this user group is just to enhance the skills of the techies. &lt;br /&gt;&lt;br /&gt;I suggest to join the group because it beyond the limit so anybody from world can join the group at :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://jaipurmentor.com/component/user/?task=register&amp;amp;referrer=AUPRR-4B3323B629220"&gt;http://jaipurmentor.com/component/user/?task=register&amp;amp;referrer=AUPRR-4B3323B629220&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6538894892177977134?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6538894892177977134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/microsoft-user-group-jaipur.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6538894892177977134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6538894892177977134'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/microsoft-user-group-jaipur.html' title='Microsoft User Group Jaipur : jaipurmentor.com'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1248795774990307988</id><published>2010-01-21T19:26:00.000+05:30</published><updated>2010-01-21T19:26:06.999+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mynangal.com'/><category scheme='http://www.blogger.com/atom/ns#' term='Gems of Nangal'/><title type='text'>Gems of Nangal - a search of Gems</title><content type='html'>Here is a news I want to share with all you guys.&lt;br /&gt;Nangal Community&amp;nbsp;&lt;a href="http://mynangal.com/"&gt;mynangal&lt;/a&gt; is looking for Gems.&lt;br /&gt;Gems are the person from through out the world who have give their contribution to Explore Nangal around the world.&lt;br /&gt;&lt;br /&gt;There are certain rules for the Gems.&lt;br /&gt;&lt;br /&gt;I will be proud if I selected as one of the Gems of Nangal.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1248795774990307988?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.mynangal.com/' title='Gems of Nangal - a search of Gems'/><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1248795774990307988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/gems-of-nangal-search-of-gems.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1248795774990307988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1248795774990307988'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2010/01/gems-of-nangal-search-of-gems.html' title='Gems of Nangal - a search of Gems'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5608564959142936738</id><published>2009-12-18T18:02:00.002+05:30</published><updated>2009-12-18T19:15:29.913+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='World record Sessions'/><category scheme='http://www.blogger.com/atom/ns#' term='HyderabadTechies'/><title type='text'>World record Sessions on Micrososft Latest Technologies</title><content type='html'>Join World record free online sessions on Microsoft technologies from Sat to Mon.&lt;br /&gt;&lt;br /&gt;This is the first time any community arrange such huge concert. Following are the some highlights of sessions:&lt;br /&gt;&lt;br /&gt;1. Key notes from Abhishek kant - MVP Lead of Micrososft&lt;br /&gt;2. Key notes by Ashwin U. Kini - Regional Chairman APAC (Asia-Pacific)&lt;br /&gt;3. Closing notes by Chandershekhar Thota - MVP, Founder of HyderabadTechies.info&lt;br /&gt;4. Special Sessions by Meetu Choudhary - First MVP from Jaipur, founder of Msdotnetmentor.com&lt;br /&gt;5. Around 45-48 Sessions on different Topics by valuable Speakers.&lt;br /&gt;&lt;br /&gt;For more details and how to join the sessions, take a look at : &lt;a href="http://hyderabadtechies.info/index.php/world-record-sessions-by-us"&gt;http://hyderabadtechies.info/index.php/world-record-sessions-by-us&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5608564959142936738?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5608564959142936738/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/12/world-record-sessions-on-micrososft.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5608564959142936738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5608564959142936738'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/12/world-record-sessions-on-micrososft.html' title='World record Sessions on Micrososft Latest Technologies'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-9072116853378513593</id><published>2009-11-22T14:05:00.001+05:30</published><updated>2009-11-22T14:06:35.905+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Free online Sessions'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Session : Basics of Silverlight</title><content type='html'>&lt;b&gt;Today, I had a Session on Basics of Silverlight&lt;/b&gt;&lt;br /&gt;&lt;h1&gt;Highlights&lt;/h1&gt;&lt;br/&gt;&lt;br /&gt;&lt;p&gt;Session is started after Chandershekhar's Speech on VS2010 and a Small session thereon.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Start with the basics&lt;/li&gt;&lt;li&gt;What is Silverlight?&lt;/li&gt;&lt;li&gt;Why we use Silverlight?&lt;/li&gt;&lt;li&gt;Framework and Architectural view of Silverlight?&lt;/li&gt;&lt;li&gt;Sumed up with how to create a Simple Application.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;The attendees are very good, there are lot of questions in this session. Unfortunately, there was some problem with my Visual Studio so, was unable to present live Demo. We decided to present a demo in next coming sessions.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;We have shared all the presentation contents at : &lt;a href="http://hyderabadtechies.info"&gt;Hyderabad Techies&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are planned session in next coming days.&lt;br /&gt;&lt;br /&gt;You are invited to join!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-9072116853378513593?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/9072116853378513593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/session-basics-of-silverlight.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9072116853378513593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9072116853378513593'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/session-basics-of-silverlight.html' title='Session : Basics of Silverlight'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-96017050129195780</id><published>2009-11-22T11:07:00.001+05:30</published><updated>2009-11-22T14:00:01.434+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='Free online Sessions'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Free Online Sessions</title><content type='html'>Lets finger crossed we have started Free Online Sessions&lt;br /&gt;&lt;h1&gt;&lt;span style="font-size: large;"&gt;Session Details of 22nd November'2009&lt;/span&gt;&lt;/h1&gt;&lt;br /&gt;1. Declarative WebForms Routing by &lt;b&gt;Chandrashekar Thota&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;2. Dynamic Metadata by &lt;b&gt;Chandrashekar Thota&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;3. Silverlight Basics by &lt;b&gt;Gaurav Arora&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;4. Microsoft Chart Control by &lt;b&gt;Kiran Kumar Koyelada&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Visit for more detail: &lt;a href="http://hyderabadtechies.info/index.php/events"&gt;http://hyderabadtechies.info/index.php/events&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-96017050129195780?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/96017050129195780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/free-online-sessions-on-microsoft.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/96017050129195780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/96017050129195780'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/free-online-sessions-on-microsoft.html' title='Free Online Sessions'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4886761971472229998</id><published>2009-11-19T14:47:00.000+05:30</published><updated>2009-11-19T14:47:37.843+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='DNS-MVM'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft Community'/><category scheme='http://www.blogger.com/atom/ns#' term='Appreciation'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Appreciation from DotnetSpider</title><content type='html'>Its a gain a Good Morning for me:&lt;br /&gt;&lt;h1&gt;My hat-trick in DotNetspider&lt;/h1&gt;&lt;p&gt;I want to share with all of you guys that in the month of october I made hat-trick, I got three consequent awards from DotNetSpider.com, for my involvement in the community.&lt;/p&gt;&lt;br /&gt;Refer to the Announcements:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetspider.com/forum/228584-Best-Forum-Supporter-Award-th-Oct-st-October.aspx"&gt;http://www.dotnetspider.com/forum/228584-Best-Forum-Supporter-Award-th-Oct-st-October.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetspider.com/forum/228569-Certificates-winners-sent-st-October.aspx"&gt;http://www.dotnetspider.com/forum/228569-Certificates-winners-sent-st-October.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4886761971472229998?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4886761971472229998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/appreciation-from-dotnetspider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4886761971472229998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4886761971472229998'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/11/appreciation-from-dotnetspider.html' title='Appreciation from DotnetSpider'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-534440071806755990</id><published>2009-10-31T18:09:00.000+05:30</published><updated>2009-10-31T18:09:06.596+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Window.open'/><title type='text'>Window.open method at a glance</title><content type='html'>Windo.open method is very good when we need some client&amp;nbsp;scripting. Many people ask me why we the need of window.open() method we can you some others too for the purpose to open the popup windows.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;b&gt;Description&lt;/b&gt;&lt;br /&gt;In simple words,&amp;nbsp;&lt;i&gt;Window.open&lt;/i&gt;&amp;nbsp;method is used when we need to open some popup&amp;nbsp;messages&amp;nbsp;or need some extra results for clients.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;The syntax of the&amp;nbsp;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;window.open&lt;/strong&gt;&amp;nbsp;method is given below:&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;open (URL, windowName[, windowFeatures])&lt;br /&gt;&lt;/blockquote&gt;&amp;nbsp;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; font-weight: bold; line-height: 21px;"&gt;URL&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;This is the URL of the page which open in the new window.&amp;nbsp;It could be blank.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;windowName&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;A name to be given to the new window.&amp;nbsp;The name can be used to refer this window again.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;windowFeatures&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;It contains the various window&amp;nbsp;features for the popup window i.e. status bar, address bar etc.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The following lines of code, open a new browser window with standard features :&lt;br /&gt;&lt;/div&gt;&lt;blockquote&gt;window.open ("http://interview.msdotnetheaven.com","MsDn Interview Questions");&lt;br /&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;h3 style="font-weight: bold; font: normal normal normal 1.3em/normal Arial; margin-bottom: 3px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: inherit;"&gt;Changing the features of the Popup&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;By using some stuff we can control the features of the popup.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The following code opens a window with a status bar&amp;nbsp;and no extra features:&lt;br /&gt;&lt;/div&gt;&lt;blockquote&gt;window.open ("http://interview.msdotnetheaven.com","MsDn Interview Questions","status=1");&lt;/blockquote&gt;The code below opens a window with toolbar and status bar :&lt;br /&gt;&lt;blockquote&gt;window.open ("http://interview.msdotnetheaven.com","MsDn Interview Questions","status=1,toolbar=1");&amp;nbsp;&lt;/blockquote&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span style="font-family: inherit;"&gt;The following is the table tells the features :&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;table border="0" cellpadding="2" cellspacing="2" style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;tbody style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;status&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;The status bar.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;toolbar&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;The standard browser toolbar.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;location&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;The URL Location entry field.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;menubar&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;The menu bar of the window&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;directories&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;The standard browser directory buttons.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;resizable&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;Allow/Disallow the user to resize the window.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;scrollbars&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;Enable the scrollbars if the document is bigger than the window&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;height&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;Specifies the height of the window in pixels.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;width&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: inherit;"&gt;Specifies the width of the window in pixels.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="color: black; font-family: 'Times New Roman';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; line-height: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: black; font-family: 'Times New Roman';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; line-height: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: black; font-family: 'Times New Roman';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; line-height: normal;"&gt;&lt;b&gt;Example :&lt;/b&gt;&lt;br /&gt;The Code below opens a popup window when you enter the page:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;SCRIPT&amp;nbsp;language="JavaScript"&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;function openBlank()&lt;/blockquote&gt;&lt;blockquote&gt;{&lt;/blockquote&gt;&lt;blockquote&gt;testwindow =&amp;nbsp;window.open ("", "mywindow",&amp;nbsp;"location=1,status=1,scrollbars=1,width=100,height=100");&lt;/blockquote&gt;&lt;blockquote&gt;testwindow.moveTo(0,0);&lt;/blockquote&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;blockquote&gt;}&lt;/blockquote&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;span style="color: black; font-family: 'Times New Roman';"&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-size: medium; line-height: normal;"&gt;&amp;lt;body&amp;nbsp;onload="javascript: openBlank()"&amp;gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="Apple-style-span" style="font-size: medium; line-height: normal;"&gt;&lt;blockquote&gt;&amp;lt;H1&amp;gt;Open Blank Popup WIndow&amp;lt;/H1&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;b&gt;Popup On Exit&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The following code pops up a window when the user exits a page.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;title&amp;gt;Window Exit Alert &lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;SCRIPT&amp;nbsp;language="JavaScript"&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;function exitAlert()&lt;/blockquote&gt;&lt;blockquote&gt;{&lt;/blockquote&gt;&lt;blockquote&gt;my_window=window.open ("","mywindow1","status=1,width=350,height=150");&lt;/blockquote&gt;&lt;blockquote&gt;my_window.document.write('&amp;lt;H1&amp;gt;Exiting Window... &lt;/blockquote&gt;&lt;blockquote&gt;}&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;body&amp;nbsp;onunload="javascript: exitAlert()"&amp;nbsp;&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;H1&amp;gt;Window Exit Alert&amp;lt;/H1&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;b&gt;Opening same url in New window:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;head&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;title&amp;gt;Open Same window &lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;SCRIPT language="JavaScript"&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;function OpenMe()&lt;/blockquote&gt;&lt;blockquote&gt;{&amp;nbsp;&lt;/blockquote&gt;&lt;blockquote&gt;var url = self.location;&lt;/blockquote&gt;&lt;blockquote&gt;window.open(url,"MySelf","left=20,top=20,width=500,height=500,toolbar=1,resizable=0");&lt;/blockquote&gt;&lt;blockquote&gt;}&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;/SCRIPT&amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;body &amp;gt;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;lt;H1&amp;gt;Open Same window&lt;/blockquote&gt;&lt;blockquote&gt;Test code here: &amp;lt;a href="javascript:OpenMe();"&amp;gt;Open Me&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;We can also open the current page in new window.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-534440071806755990?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/534440071806755990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/10/windowopen-method-at-glance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/534440071806755990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/534440071806755990'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/10/windowopen-method-at-glance.html' title='Window.open method at a glance'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1323217704786950837</id><published>2009-10-18T00:36:00.001+05:30</published><updated>2009-10-31T09:03:50.213+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lambda Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>What is a Lambda expression?</title><content type='html'>&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #333333; font-family: Baskerline, Arial, Helvetica; font-size: 12px; line-height: 21px;"&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;A Lambda expression is nothing but an Anonymous Function, can contain expressions and statements. Lambda expressions can be used mostly to create delegates or expression tree types. Lambda expression uses lambda operator =&amp;gt; and read as ‘goes to’ operator.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Left side of this operator specifies the input parameters and contains the expression or statement block at the right side.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Example:  myExp = myExp/10;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Now, let see how we can assign the above to a delegate and create an expression tree:&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Arial; line-height: 18px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="font-family: Arial; line-height: 18px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;delegate int myDel(int intMyNum);&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;static void Main(string[] args)&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;{&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;//assign lambda expression to a delegate:&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;myDel myDelegate = myExp =&amp;gt; myExp / 10;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;int intRes = myDelegate(110);&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Console.WriteLine(”Output {0}”, intRes);&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Console.ReadLine();&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;//Create an expression tree type&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;//This needs System.Linq.Expressions&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Expression&lt;mydel&gt; myExpDel = myExp =&amp;gt; myExp /10;&lt;/mydel&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/pre&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-decoration: underline;"&gt;Note:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The =&amp;gt; operator has the same precedence as assignment (=) and is right-associative.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Lambdas are used in method-based LINQ queries as arguments to standard query operator methods such as Where.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1323217704786950837?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1323217704786950837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/10/what-is-lambda-expression.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1323217704786950837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1323217704786950837'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/10/what-is-lambda-expression.html' title='What is a Lambda expression?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4336605387343471146</id><published>2009-09-29T01:27:00.000+05:30</published><updated>2009-09-29T01:33:05.999+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web solutions'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Space'/><category scheme='http://www.blogger.com/atom/ns#' term='Domain Registrations'/><category scheme='http://www.blogger.com/atom/ns#' term='SEO Tips'/><title type='text'>Web Space, Domain Registrations, Web solutions, SEO Tips</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: tahoma, 'Trebuchet MS', lucida, helvetica, sans-serif; font-size: 13px; color: rgb(85, 85, 68); line-height: 18px; "&gt;After millions of search, I finally got the &lt;a href="http://subhhosting.com"&gt;Web Hosting, Unlimited, Web Solution, SEO Tips&lt;/a&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: 19px; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: 19px; "&gt;They provide complete solution and Web hosting of sites for multiple platforms containing all Windows, Linux under one roof.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: 19px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: 19px; "&gt;I got a plan from there and get benefited:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size: 19px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: monospace; font-size: 13px; line-height: normal; white-space: pre-wrap; "&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size:19px;"&gt;They provide complete solution and Web hosting of sites for multiple platforms containing all Windows, Linux under one roof.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size:19px;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size:19px;"&gt;I got a plan from there and get benefited.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size:19px;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size:6;"&gt;&lt;span class="Apple-style-span" style="font-size:19px;"&gt;&lt;span class="Apple-style-span" style="  white-space: pre-wrap; font-family:monospace;font-size:13px;"&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="name" width="468" codebase="http://active.macromedia.com/flash4/cabs/swflash.cab#version=4,0,0,0" height="60"&gt;   &lt;param value="http://www.msdotnetheaven.com/shubhhostingDiwali.swf" name="movie"&gt;   &lt;param value="high" name="quality"&gt;   &lt;param value="transparent" name="wmode"&gt;   &lt;embed pluginspage="http://www.macromedia.com/shockwave/download/index.cgi? P1_Prod_Version=ShockwaveFlash" quality="high" type="application/x-shockwave-flash" height="60" src="http://www.msdotnetheaven.com/shubhhostingDiwali.swf" width="468" wmode="transparent" name="name"&gt;&lt;/embed&gt;    &lt;/object&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4336605387343471146?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4336605387343471146/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/09/web-space-domain-registrations-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4336605387343471146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4336605387343471146'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/09/web-space-domain-registrations-web.html' title='Web Space, Domain Registrations, Web solutions, SEO Tips'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-7672020504138430637</id><published>2009-09-29T01:25:00.000+05:30</published><updated>2009-09-29T01:26:31.045+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2008 training courses'/><title type='text'>SQL Server training courses</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; font-size: 13px; color: rgb(76, 76, 76); -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; "&gt;Are you looking for SQL Server 2008 training courses ? Do you want to become a SQL Server DBA without any prior experience in IT field ?&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"    style="font-family:Arial, Helvetica, sans-serif;font-size:100%;color:#4C4C4C;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"    style="font-family:Arial, Helvetica, sans-serif;font-size:100%;color:#4C4C4C;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; "&gt;&lt;span id="ctl00_ContentPlaceHolder1_lblMessage" style="font-family: Arial, Helvetica, sans-serif; font-size: 10pt; "&gt;The training will led directly by Tony John, founder and architect of dotnetspider.com. Tony John is a Microsoft MVP with over 13 years of experience in Microsoft technologies.&lt;br /&gt;&lt;br /&gt;Click here for more details about &lt;b&gt;&lt;a href="http://www.sqlspider.com/"&gt;SQL Server training courses&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;a href="http://www.sqlspider.com/"&gt; &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"    style="font-family:Arial;font-size:100%;color:#4C4C4C;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"    style="font-family:Arial;font-size:100%;color:#4C4C4C;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px; -webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-7672020504138430637?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/7672020504138430637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/09/sql-server-training-courses.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7672020504138430637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7672020504138430637'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/09/sql-server-training-courses.html' title='SQL Server training courses'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2269618808371714323</id><published>2009-08-22T13:23:00.000+05:30</published><updated>2009-08-22T13:24:54.287+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='searchprotocol.exe'/><category scheme='http://www.blogger.com/atom/ns#' term='windowsxp'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>How to stop Searchprotocolhost.exe on WIndowsXP?</title><content type='html'>&lt;div&gt;&lt;b&gt;Problem:&lt;/b&gt;How to stop Searchprotocolhost.exe on WIndowsXP?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Sol&lt;/b&gt;: Searchprotocolhost.exe is one of the reason to make your system slow. Following are the step(s) to stop this and make system fast.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Click Start -&gt; Run or Press Windows + R&lt;/div&gt;&lt;div&gt;2. Type services.msc and press 'Ok' or click 'Enter'&lt;/div&gt;&lt;div&gt;3. Scroll down to find 'Windows Search' and double click&lt;/div&gt;&lt;div&gt;4. Stop the process&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another step to disable it from Startup:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Reapeat step number 1&lt;/div&gt;&lt;div&gt;6. Type 'msconfig' and press 'Ok' or click 'Enter'&lt;/div&gt;&lt;div&gt;7. Click on 'Startup' tab&lt;/div&gt;&lt;div&gt;8. Uncheck 'Windows Search' checkbox&lt;/div&gt;&lt;div&gt;9. Click Ok.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Restart your system.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;To verify&lt;/b&gt; :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Open your TaskManager by pressing 'Ctrl+Alt+Del' and locate for Searchprotocolhost.exe in process tab.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2269618808371714323?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2269618808371714323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/08/how-to-stop-searchprotocolhostexe-on.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2269618808371714323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2269618808371714323'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/08/how-to-stop-searchprotocolhostexe-on.html' title='How to stop Searchprotocolhost.exe on WIndowsXP?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-44452781536211834</id><published>2009-07-02T23:41:00.000+05:30</published><updated>2009-07-02T23:43:36.962+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF services'/><category scheme='http://www.blogger.com/atom/ns#' term='Debugging WCF services'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>Debugging WCF Services : At a glance</title><content type='html'>&lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Debugging a WCF Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Following are the 3-different ways to start debugging a WCF service:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: .5in;text-indent:-.25in;line-height:14.05pt;mso-list:l3 level1 lfo1;tab-stops: list .5in"&gt;&lt;span style="font-size:10.0pt;mso-bidi-font-size: 12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family: Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;When you are debugging a client process that calls a service. Here debugger steps into the service also service does not have to be in the same solution as your client application.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: .5in;text-indent:-.25in;line-height:14.05pt;mso-list:l3 level1 lfo1;tab-stops: list .5in"&gt;&lt;span style="font-size:10.0pt;mso-bidi-font-size: 12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family: Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;When you are debugging a client process that requests to a service and here service must be a part of your solution.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: .5in;text-indent:-.25in;line-height:14.05pt;mso-list:l3 level1 lfo1;tab-stops: list .5in"&gt;&lt;span style="font-size:10.0pt;mso-bidi-font-size: 12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;mso-bidi-font-family: Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;When you are using &lt;span class="ui"&gt;&lt;b&gt;Attach to Process&lt;/b&gt;&lt;/span&gt;&lt;span class="apple-converted-space"&gt; to attach to currently running service. Here debugging begins inside the service.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;&lt;o:p&gt;&lt;span style="text-decoration:  none"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Debugging with Visual Studio 2008&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:9.35pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;Using Visual Studio 2008, one can step into a WCF service. One can hit break points inside the WCF service, if the WCF service is in the same solution as the client.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:9.35pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;For stepping to work, you must have debugging enabled in the app.config or Web.config file we will discuss later on the limitation and how to enable debugging.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto; line-height:14.05pt;mso-outline-level:3"&gt;&lt;b&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;To step into a WCF Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ol style="margin-top:0in" start="1" type="1"&gt;  &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;      mso-list:l1 level1 lfo2;tab-stops:list .5in"&gt;&lt;span style="font-size:12.0pt;      font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;First      you need to create a Visual Studio solution that contains both the WCF      client and WCF service projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;      mso-list:l1 level1 lfo2;tab-stops:list .5in"&gt;&lt;span style="font-size:12.0pt;      font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;Now      from Solution Explorer, right-click the WCF Client project and then click Set      as Startup Project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;      mso-list:l1 level1 lfo2;tab-stops:list .5in"&gt;&lt;span style="font-size:12.0pt;      font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;Then      enable debugging in the app.config or web.config file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;      mso-list:l1 level1 lfo2;tab-stops:list .5in"&gt;&lt;span style="font-size:12.0pt;      font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;Mark      a breakpoint at the location in the client project where you want to start      stepping (just before the WCF service call).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;      mso-list:l1 level1 lfo2;tab-stops:list .5in"&gt;&lt;span style="font-size:12.0pt;      font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;Now,      Run to the breakpoint, then begin stepping. The debugger will step into      the service automatically.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;&lt;o:p&gt;&lt;span style="text-decoration:  none"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Limitations of Debugging a WCF Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:12.0pt;line-height:115%;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraph" style="margin-bottom:0in;margin-bottom:.0001pt; mso-add-space:auto;text-indent:-.25in;line-height:14.05pt;mso-list:l5 level1 lfo5"&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;1.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;Stepping Into a Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:.5in;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;The following conditions should be met when you start To step into a service from a client applications:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l2 level1 lfo3; tab-stops:list 1.0in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;Service must be called bys using a synchronous client object.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l2 level1 lfo3; tab-stops:list 1.0in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;One-way contract operation is not allowed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul style="margin-top:0in" type="disc"&gt;  &lt;ul style="margin-top:0in" type="disc"&gt;   &lt;li class="MsoNormal" style="color:black;margin-bottom:9.35pt;line-height:14.05pt;       mso-list:l2 level2 lfo3;tab-stops:list 1.0in"&gt;&lt;span style="font-size:       12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;"&gt;Debugging       must be enabled&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;       mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family:&amp;quot;Courier New&amp;quot;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;/ul&gt; &lt;/ul&gt;  &lt;p class="MsoListParagraph" style="margin-bottom:0in;margin-bottom:.0001pt; mso-add-space:auto;text-indent:-.25in;line-height:14.05pt;mso-list:l5 level1 lfo5"&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;2.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;Stepping Out of a Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;The limitations are the same as described the above, in addition, here the debugger must be attached to the client. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;This is because while you are debugging a client and step into a service, the debugger remains attached to the service whether you started the client by using &lt;b&gt;Start Debugging&lt;/b&gt; or attached to the client by using &lt;b&gt;Attach to Process&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;But while you are debugging by attaching to the service, the debugger is not yet attached to the client. In that case, you must first use &lt;b&gt;Attach to Process&lt;/b&gt; to attach to the client manually.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;Debugging must be enabled&lt;/span&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family:&amp;quot;Courier New&amp;quot;;color:black"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoListParagraph" style="margin-bottom:0in;margin-bottom:.0001pt; mso-add-space:auto;text-indent:-.25in;line-height:14.05pt;mso-list:l5 level1 lfo5"&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;3.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;Automatic Attach to a Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;Automatically attaching to a service has the following limitations:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;text-indent:-.25in;line-height:14.05pt;mso-list:l4 level1 lfo4; tab-stops:list 1.5in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;In this case the service must be part of the solution you are debugging.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;text-indent:-.25in;line-height:14.05pt;mso-list:l4 level1 lfo4; tab-stops:list 1.5in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;The service must be hosted. &lt;i style="mso-bidi-font-style:normal"&gt;Which means it may be part of a Web Site Project (File System and HTTP), Web Application Project (File System and HTTP), or WCF Service Library project. WCF Service Library projects can be either Service Libraries or Workflow Service Libraries.&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;text-indent:-.25in;line-height:14.05pt;mso-list:l4 level1 lfo4; tab-stops:list 1.5in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;WCF client must be invoked the service.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:40.5pt;text-indent:-.25in;line-height:14.05pt;mso-list:l4 level1 lfo4; tab-stops:list 1.5in"&gt;&lt;span style="font-size:10.0pt; mso-bidi-font-size:12.0pt;font-family:Symbol;mso-fareast-font-family:Symbol; mso-bidi-font-family:Symbol;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;·&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;color:black"&gt;Debugging must be enabled&lt;/span&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family:&amp;quot;Courier New&amp;quot;;color:black"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:12.0pt;line-height:115%;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Enabling Debugging a WCF Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 0in;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Use following piece of lines in web.config or asp.config file(s):&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div style="mso-element:para-border-div;border:none;border-top:solid #C8CDDE 1.0pt; padding:5.0pt 0in 0in 0in;background:#DDDDDD;margin-left:.25in;margin-right: 0in"&gt;  &lt;p class="MsoNormal" style="margin-bottom:9.35pt;line-height:14.05pt;background: #DDDDDD;border:none;mso-border-top-alt:solid #C8CDDE 1.0pt;padding:0in; mso-padding-alt:5.0pt 0in 0in 0in"&gt;&lt;span style="font-size:12.0pt;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family: &amp;quot;Courier New&amp;quot;;color:#00B050"&gt;&amp;lt;system.web&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:9.35pt;line-height:14.05pt;background: #DDDDDD;border:none;mso-border-top-alt:solid #C8CDDE 1.0pt;padding:0in; mso-padding-alt:5.0pt 0in 0in 0in"&gt;&lt;span style="font-size:12.0pt;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family: &amp;quot;Courier New&amp;quot;;color:#00B050"&gt;&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&amp;lt;compilation debug="true" /&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom:9.35pt;line-height:14.05pt;background: #DDDDDD;border:none;mso-border-top-alt:solid #C8CDDE 1.0pt;padding:0in; mso-padding-alt:5.0pt 0in 0in 0in"&gt;&lt;span style="font-size:12.0pt;font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family: &amp;quot;Courier New&amp;quot;;color:#00B050"&gt;&amp;lt;system.web&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:.25in;line-height:14.05pt"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;u&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt;Note:&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;color:black"&gt; &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;In case when you use &lt;b&gt;Attach to Process&lt;/b&gt; on a service, the debug code is automatically added to the .config file. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt; margin-left:.25in;line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt; font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;; color:black"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span class="apple-style-span"&gt;&lt;b&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-bidi-font-family:Arial;color:black"&gt;How to Debug a Self-Hosted WCF Service?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;In simple words WCF service which does not run inside IIS, WCF service Host or ASP.NET Development Server is know as &lt;i style="mso-bidi-font-style:normal"&gt;Self-Hosted Service.&lt;/i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;To debug such services we need to configure Visual Studio to launch both client and server when you choose&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Start Debugging&lt;/span&gt; on the&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Debug&lt;/span&gt;&lt;span class="apple-converted-space"&gt; &lt;/span&gt;menu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin:0in;margin-bottom:.0001pt;line-height:14.05pt"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3 style="line-height:14.05pt"&gt;&lt;span style="font-size:12.0pt;font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;How to start both client and host from Visual Studio?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: .5in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level1 lfo6;tab-stops: list .5in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;1.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;Need to create a Visual Studio solution pertaining &lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;both the client and server projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: .5in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level1 lfo6;tab-stops: list .5in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;2.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;Now configure the solution to start both client and server :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level2 lfo6; tab-stops:list 1.0in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;a.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;From  &lt;/span&gt;&lt;/span&gt;&lt;span class="ui"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;Solution Explorer&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;, right-click the solution name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level2 lfo6; tab-stops:list 1.0in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;b.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;Click&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Set Startup Projects&lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level2 lfo6; tab-stops:list 1.0in"&gt;&lt;i style="mso-bidi-font-style:normal"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;mso-fareast-font-family:Cambria; mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;c.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;;color:black"&gt;In &lt;span class="ui"&gt;Solution from &lt;i style="mso-bidi-font-style:normal"&gt;&lt;name&gt;&lt;/i&gt; Properties&lt;/span&gt;&lt;span class="apple-converted-space"&gt; &lt;/span&gt;dialog box, select&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;&lt;i style="mso-bidi-font-style: normal"&gt;Multiple Startup Projects&lt;/i&gt;&lt;/span&gt;&lt;i style="mso-bidi-font-style:normal"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level2 lfo6; tab-stops:list 1.0in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;d.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;Click &lt;span class="ui"&gt;Action&lt;/span&gt;&lt;span class="apple-converted-space"&gt; &lt;/span&gt;and choose&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Start&lt;/span&gt; from the&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Multiple Startup Projects&lt;/span&gt;&lt;span class="apple-converted-space"&gt; &lt;/span&gt;grid, on the line that corresponds to the server project also on the line that corresponds to the client project, click&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Action&lt;/span&gt;&lt;span class="apple-converted-space"&gt; &lt;/span&gt;and choose&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;Start&lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:0in;margin-right:0in;margin-bottom:9.35pt;margin-left: 1.0in;text-indent:-.25in;line-height:14.05pt;mso-list:l0 level2 lfo6; tab-stops:list 1.0in"&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family:Cambria;mso-bidi-font-family:Cambria;color:black"&gt;&lt;span style="mso-list:Ignore"&gt;e.&lt;span style="font:7.0pt &amp;quot;Times New Roman&amp;quot;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; color:black"&gt;Finally click&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;span class="ui"&gt;OK&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-44452781536211834?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/44452781536211834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/07/debugging-wcf-services-at-glance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/44452781536211834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/44452781536211834'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/07/debugging-wcf-services-at-glance.html' title='Debugging WCF Services : At a glance'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2889600426961359806</id><published>2009-05-31T18:22:00.000+05:30</published><updated>2009-05-31T18:41:27.781+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='expression blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='silverlight games'/><title type='text'>Silverlight 3  Planned to release</title><content type='html'>As per Microsoft promise, &lt;strong&gt;Silverlight 3 &lt;/strong&gt;is coming very soon. Finally, Silverlight 3 is ready to launch on July 10 including its Expression Blend Studio 3 family of designer tools.&lt;br /&gt;&lt;font color=blue&gt;&lt;br /&gt;Silverlight 3 adds some fetures:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;3D Support&lt;/li&gt;&lt;br /&gt;&lt;li&gt;GPU acceleration&lt;/li&gt;&lt;br /&gt;&lt;li&gt;H.264 video support&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Out-of-browser support&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;b&gt;out-of-browser support&lt;/b&gt; will allow Silverlight apps to run on Windows or Mac clients and provide users with online, offline or intermittently connected access to their Silverlight apps and content.&lt;br /&gt;&lt;br /&gt;Right now, Silverlight 3 beta version is available for &lt;a href="http://go.microsoft.com/fwlink/?LinkID=143433" target="_blank"&gt;download&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2889600426961359806?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2889600426961359806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/silverlight-3-planned-to-release.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2889600426961359806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2889600426961359806'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/silverlight-3-planned-to-release.html' title='Silverlight 3  Planned to release'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2762536396839975982</id><published>2009-05-24T17:00:00.000+05:30</published><updated>2009-05-24T17:05:54.293+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='DNS-MVM'/><category scheme='http://www.blogger.com/atom/ns#' term='Award'/><category scheme='http://www.blogger.com/atom/ns#' term='Raghav'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='Dotnetspider'/><title type='text'>Interview with Dotnetspider.com - MVM award</title><content type='html'>In continuation on my award of MVM from dotnetspider.com, DNS published my interview on this award.&lt;br /&gt;&lt;br /&gt;In this interview I have shared my views with &lt;span style="font-weight:bold;"&gt;Raghav&lt;/span&gt; on my this achievement.&lt;br /&gt;&lt;br /&gt;The tenure of interview is around 60-minutes, I really enjoyed with Raghav.&lt;br /&gt;&lt;br /&gt;Here is the link of my interview : &lt;a href="http://www.dotnetspider.com/forum/206904-Few-moments-with-Gaurav-Arora-DotNetSpider-MVM.aspx"&gt;http://www.dotnetspider.com/forum/206904-Few-moments-with-Gaurav-Arora-DotNetSpider-MVM.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2762536396839975982?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2762536396839975982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/interview-with-dotnetspidercom-mvm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2762536396839975982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2762536396839975982'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/interview-with-dotnetspidercom-mvm.html' title='Interview with Dotnetspider.com - MVM award'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-252005220968005911</id><published>2009-05-21T21:31:00.000+05:30</published><updated>2009-05-21T21:33:14.173+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Shuby'/><category scheme='http://www.blogger.com/atom/ns#' term='Vs2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Visual Studio 2010 Beta-I : Ready to work</title><content type='html'>Its a great day for all techie today.&lt;br /&gt;Microsoft released its new Visual Studion version.&lt;br /&gt;&lt;br /&gt;Finally, Visual Studio 2010 Beta-I is released and available to download.&lt;br /&gt;&lt;br /&gt;Get the cheat Sheet at : &lt;a href="http://blogs.msdn.com/danielfe/archive/2009/05/20/visual-studio-2010-beta-1-cheat-sheet.aspx"&gt;http://blogs.msdn.com/danielfe/archive/2009/05/20/visual-studio-2010-beta-1-cheat-sheet.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-252005220968005911?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/252005220968005911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/visual-studio-2010-beta-i-ready-to-work.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/252005220968005911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/252005220968005911'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/visual-studio-2010-beta-i-ready-to-work.html' title='Visual Studio 2010 Beta-I : Ready to work'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-7042859023757662849</id><published>2009-05-03T19:41:00.000+05:30</published><updated>2009-05-03T19:42:02.513+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Controls'/><title type='text'>Defining and using styles in Silverlight</title><content type='html'>&lt;h2&gt;Defining and using styles in Silverlight&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Lets take practical scenario for Styles in Silverlight.&lt;br /&gt;&lt;br /&gt;Silverlight allows re-useable styles to be created to avoid duplication:&lt;br /&gt;&lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&amp;lt;Button x:Name="btnSubmit" FontFamily="Arial"&lt;br /&gt;FontWeight="Bold" Width="100" Height="25"&lt;br /&gt;Margin="10" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;Button x:Name="btnCancel" FontFamily="Arial"&lt;br /&gt;FontWeight="Bold" Width="100" Height="25"&lt;br /&gt;Margin="10" /&amp;gt;&lt;br /&gt;&lt;/CODE&gt;&lt;br /&gt;We can also create Global Styles using app.xaml file&lt;br /&gt;&lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&amp;lt;Application.Resources&amp;gt;&lt;br /&gt;&amp;lt;Style x:Key="ButtonStyle" TargetType="Button"&amp;gt;&lt;br /&gt;&amp;lt;Setter Property="Width" Value="100" /&amp;gt;&lt;br /&gt;&amp;lt;/Style&amp;gt;&lt;br /&gt;&amp;lt;/Application.Resources&amp;gt;&lt;br /&gt;&lt;/CODE&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Applying Styles to Controls:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;With the help of Style property we can apply the global style to the properties:&lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&amp;lt;Button x:Name="btnSubmit" Content="Submit"&lt;br /&gt;Click="btnSubmit_Click"&lt;br /&gt;Style="{StaticResource ButtonStyle}" /&amp;gt;&lt;br /&gt;&lt;/CODE&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-7042859023757662849?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/7042859023757662849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/defining-and-using-styles-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7042859023757662849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/7042859023757662849'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/defining-and-using-styles-in.html' title='Defining and using styles in Silverlight'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8045438584988025647</id><published>2009-05-03T19:39:00.000+05:30</published><updated>2009-05-03T19:57:30.178+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Datagrid'/><title type='text'>Silverlight : DataGrid Control</title><content type='html'>&lt;h4&gt;DataGrid&lt;/h4&gt; DataGrids are fundamental UI controls. They radically simplify the task of displaying structured data to users by automatically handling the rendering of rows, columns, headers, and data navigation. Silverlight's data grid is no exception. While it is far from being a complete or "advanced" grid control by today's WinForms and ASP.NET standards, it does provide basic grid functionality.&lt;br /&gt;&lt;br /&gt;To use the DataGrid control, you must simply bind the Grid to a list of items (that implement IEnumerable) via the ItemSource property. In the simplest approach, the Grid will automatically generate columns based on the data you supply and even render "special" column types- like checkbox columns- based on your data types. You can, of course, take more control and manually define the columns that will be rendered in your grid by setting the AutoGenerateColumns property to false.&lt;br /&gt;&lt;br /&gt;We have to add following namespace to use DataGrid: &lt;br /&gt;xmlns:my="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"&lt;br /&gt;&lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&amp;lt;my:DataGrid x:Name="myDataGrid" AutoGenerateColumns="true" /&amp;gt;&lt;br /&gt;&lt;/CODE&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8045438584988025647?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8045438584988025647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/silverlight-datagrd-control.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8045438584988025647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8045438584988025647'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/silverlight-datagrd-control.html' title='Silverlight : DataGrid Control'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5119507843760367628</id><published>2009-05-03T02:16:00.000+05:30</published><updated>2009-05-03T02:47:40.294+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='FAQ'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='silverlight games'/><title type='text'>Silverlight Top 8 Frequently Asked Questions</title><content type='html'>&lt;p&gt;&lt;strong&gt;Q. What is Silverlight Tool Kit?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans:&lt;/strong&gt; To create an application or game you need to design, code and give some extra feature to your output. &lt;/p&gt;&lt;p&gt;To do the above, you need some controls, IDE etc.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Silverlight Tool kit&lt;/strong&gt; is nothing but is a collection of Silverlight Tools, Components etc. It includes source code describing the all you need to develop an application.&lt;/p&gt;&lt;p&gt;Please visit this link for more info:&lt;a href="http://www.codeplex.com/Silverlight"&gt;http://www.codeplex.com/Silverlight&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Q. Can I add more than one .xaml pages in silverlight application?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans:&lt;/strong&gt; Yes, you can have multiple .xaml files in a single project.&lt;br /&gt;&lt;br /&gt;In the App.xaml, in the method Application_Startup you can choose, which page you want to initially display. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. How can I create image pieces/sub image?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans: &lt;/strong&gt;In straight way you can''t create a subimage from an existing image. Here you just clip an image, Clipping is just different from Cropping. In clipping, first you have to dictate which part of the images to draw and later you have to remove all but the desired part of the image. Silverlight does not support cropping.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. How does Silverlight 2 differ from Adobe Flash?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans: &lt;/strong&gt;As I am from .Net background so in my views you can get C# / Vb.net compiled code but in Flash there is only action script.&lt;br /&gt;&lt;br /&gt;You can find difference in depth at : &lt;a href="http://silverlight.net/forums/t/3015.aspx"&gt;http://silverlight.net/forums/t/3015.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. How can I switch to Expression Blend from Visual Studio?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans: &lt;/strong&gt;Expression blend provide great extensibility for XAML files.To switch to Expression Blend, right-click on the XAML file and select Open in Expression Blend.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. What happened when I press F5 within Visual Studio to run Silverlight application?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans: &lt;/strong&gt;When you run the Silverlight application within Visual Studio, a new folder created in the web-site project for silverlight solution and it happened only first time. The folder name is ClientBin and having package with XAP extension which contains  compiled project.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. Can you elaborate how to start a silverlight application with Visual Studio?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans :&lt;/strong&gt; You can find a fully described article from http://www.silverlightclub.com/resources/1858-silverlight-lets-start-building-applications.aspx.aspx&lt;br /&gt;&lt;br /&gt;In the following step(s) I am giving the ideas all about:&lt;/p&gt;&lt;p&gt;1.Create a project:Here you just start your visual studio, Select your programming language [C#/VB], Choose Silverligh Template give the name and save it.&lt;/p&gt;&lt;p&gt;2. Adding SIlverlight COntrols:One thing is happened here, controls cannot dragged onto the designer, you can draw/drag the controls on XAML page.&lt;/p&gt;&lt;p&gt;(a) Naming to control:In this step just give the name to your silverligt control like for Button you can  give name as : btnmySilverligtButton&lt;br /&gt;&lt;br /&gt;(b)Adding event handlers to Silverlight controls:Here you can give the event handlers like for click etc.&lt;br /&gt;&lt;br /&gt;(c)Testing Silverlight applications in Visual Studio:Now just press F5 and test your application&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q. What is the best place to start Silverlight application?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ans:&lt;/strong&gt; There is no hard and fast rule to start Silverlight application. Every developer can start as per his/her experience. like as per my case I always prefer Visual Studio. SO, in my view Visual Studio is the best place to start with Silverlight2 applications.Microsoft provides templates for creating Silverlight applications and libraries in C# and Visual Basic.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5119507843760367628?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5119507843760367628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/important-silverlight-faq.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5119507843760367628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5119507843760367628'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/important-silverlight-faq.html' title='Silverlight Top 8 Frequently Asked Questions'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-265346500673215469</id><published>2009-05-03T01:12:00.000+05:30</published><updated>2009-05-03T01:20:11.002+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='TechEd2009'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Microsoft TechEd-2009</title><content type='html'>Lets cheers, its a good news for all Microsoft lovers.&lt;br /&gt;&lt;b&gt;Microsoft TechEd2009&lt;/b&gt; will be conducting in Hyderabad &lt;b&gt;from May13 to May15&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Main attention of the eve is &lt;b&gt;Steven A. Ballmer,CEO Microsoft&lt;/b&gt;. This is the greatest and biggest eve in India and expecting to see a huge crowd from developer community.&lt;br /&gt;&lt;br /&gt;To grab more details please visit : &lt;a href="http://www.microsoft.com/india/teched2009/"&gt;Microsoft TechEd2009&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-265346500673215469?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/265346500673215469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/microsoft-teched-2009.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/265346500673215469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/265346500673215469'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/microsoft-teched-2009.html' title='Microsoft TechEd-2009'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2985904525517356392</id><published>2009-05-03T00:28:00.000+05:30</published><updated>2009-05-03T00:39:11.384+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Prizes'/><category scheme='http://www.blogger.com/atom/ns#' term='Recognition'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Msdotnetheaven'/><title type='text'>Activities of CodeDigest - May'2009</title><content type='html'>&lt;table&gt;&lt;th align="left"&gt;&lt;img src="http://www.codedigest.com/codedigestlogo.gif" ALT="CodeDigest Article Digest" /&gt;&lt;br&gt;&lt;h3&gt;CodeDigest For the Month 5\2009&lt;/h3&gt;&lt;/th&gt;&lt;tr align="left"&gt;&lt;th&gt;&lt;font color="#d62c15"&gt;&lt;b&gt;This Month Contest&lt;/b&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;Universal TV/VCR/DVD Remote Controller Watch with World Time&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Required:&lt;/b&gt;4 articles or 6 code snippets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;USB AA/AAA Battery Charger&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Required:&lt;/b&gt;2 articles or 3 code snippets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;Mini Pig 2 LEDs Flashlight White&lt;br /&gt;&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Required:&lt;/b&gt;For Participation&lt;/td&gt;&lt;/tr&gt;&lt;tr align="left"&gt;&lt;th&gt;&lt;br&gt;&lt;font color="#d62c15"&gt;&lt;b&gt;New Articles Published&lt;/b&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/212_How_to_edit_and_Delete_records_in_a_gridview_using_datakeys.aspx"&gt;&lt;b&gt;Edit,Update and Delete in GridView using DataKeys&lt;/b&gt;&lt;/a&gt;&lt;br&gt;Edit,Update and Delete in GridView using DataKeys,A datakey represents the primary key field or field of a record in a data-bound control. Many a times in our applications we use primary keys to get control of the particular record in the gridview. For this situation, many developers use invisible columns (Hidden columns) in the gridview to identify that row. We can achieve the same functionality using Datakeys.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/OTHERS/223_Silverlight_Start_building_applications_with_a_tweak.aspx"&gt;&lt;b&gt;Beginning Silverlight Development&lt;/b&gt;&lt;/a&gt;&lt;br&gt;Beginning Silverlight Development,Microsoft introduced Rich Internet Application with the introduction of Silverlight which is a very lightweight and a client-side application.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/227_Better_Practices_on_Building_High_Performance_Web_Pages.aspx"&gt;&lt;b&gt;Better Practices on Building High Performance Web Pages&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This article details out the better practices on how to get the most out of your web pages in terms of delivering, parsing and rendering the content on a web browser. &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/VisualStudio/228_Optimizing_Performance_in_WPF_Applications.aspx"&gt;&lt;b&gt;Optimizing Performance in WPF Applications&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This article explains how to optimize your XAML markup to speed up your WPF applications.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/VisualStudio/229_How_to_perform_WPF_Data_Binding_using_LINQ_to_XML.aspx"&gt;&lt;b&gt;How to perform WPF Data Binding using LINQ to XML&lt;/b&gt;&lt;/a&gt;&lt;br&gt;Most of the times, you may have to display XML data in your WPF applications. Traditionally, you might use XML plug-ins offered by ADO.NET. But, LINQ is the mantra now. Using LINQ to XML, it is much easier and fun to bind your WPF controls and perform data binding as a new fashion.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/230_Tips_and_Tracks_using_Hyperlink_control_in_data_controls.aspx"&gt;&lt;b&gt;Using HyperLink Control in DataBound Controls&lt;/b&gt;&lt;/a&gt;&lt;br&gt;In this article, I will explain different ways of using hyperlink control in data bound controls like GridView,DataList and Repeater control.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/Sharepoint/231_How_to_skip_SharePoint_spell_check_for_an_input_control.aspx"&gt;&lt;b&gt;How to skip SharePoint spell check for an input control&lt;/b&gt;&lt;/a&gt;&lt;br&gt;KwizCom's VP R&amp;D Shai Petel makes complex SharePoint issues – simple. Here he explains how to skip SharePoint spell check for an input control.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/232_Picasa_Style_Photo_Album_Using_ListView_Control_in_ASPNet_35.aspx"&gt;&lt;b&gt;Picasa Style Photo Album Using ListView Control in ASP.Net 3.5&lt;/b&gt;&lt;/a&gt;&lt;br&gt;ListView is a new databound control that is shipped with ASP.Net 3.5.  Read my previous article -   ListView Control in ASP.Net 3.5 which elaborates the usage of this new control.  ListView control is one of the most flexible databound control that can be used to present the data in any custom format. Moving forward, in this article we will use this new control to create Google’s Picasa style photo album. &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/jQuery/233_Building_Collapsible_Panel_Control_using_jQuery_in_ASPNet_Page.aspx"&gt;&lt;b&gt;Building Collapsible Panel Control using jQuery in ASP.Net Page&lt;/b&gt;&lt;/a&gt;&lt;br&gt;It is a technique where we can provide expand/collapse feature to a section of page. Technically, it is nothing but providing expand/collapse feature to a DIV element. So, a page with lengthy content can make use of this feature to display only less content and show the full content on demand. &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/234_Single_Button_Click_Custom_Control.aspx"&gt;&lt;b&gt;Single Button Click Custom Control&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This article demonstrates a custom control for button which gets disabled after user clicks on it so that we can stop user to resubmit the same information again and again intentionally or unintentionally.&lt;br /&gt;      Here, when user clicks on submit button, its first checks the validation part. After passing it, the data gets posted &amp; button gets disabled. After that the button gets enabled for new submission. Also the text written in the textbox gets changes dynamically.&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/OTHERS/235_Useful_Tools_for_Web_Developers.aspx"&gt;&lt;b&gt;Useful Tools for Web Developers&lt;/b&gt;&lt;/a&gt;&lt;br&gt;There are so many handy tools that we use in our day to day life to simplify our work. This article will list some of the useful tools that a webdeveloper should be aware.  &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/Silverlight/237_Silverlight2_Controls_–_At_a_glance.aspx"&gt;&lt;b&gt;Silverlight 2 Controls – Overview&lt;/b&gt;&lt;/a&gt;&lt;br&gt;In the present article we will learn something about the available Silverlight Controls.Silverlight Controls basically can be divided into: Layout Controls, Input Controls, Media Controls and Other Controls.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/WPF/238_How_to_perform_WPF_Data_Binding_using_LINQ_to_XML_-_Part_2.aspx"&gt;&lt;b&gt;How to perform WPF Data Binding using LINQ to XML - Part 2&lt;/b&gt;&lt;/a&gt;&lt;br&gt;This article is a sequel to the previous artile that shows how to perform binding to inline XML data using XLINQ objects. In this part, we discuss how to bind to an XML file using XLINQ objects and details out a sample application.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/Articles/ASPNET/239_Choosing_the_Right_DataBound_Control_in_ASPNet.aspx"&gt;&lt;b&gt;Choosing the Right DataBound Control in ASP.Net&lt;/b&gt;&lt;/a&gt;&lt;br&gt;There are various databound controls available in ASP.Net to display data. For example: GridView, DataList, Repeater, ListView, etc. Whenever we get a requirement to display data, there is always a confusion to choose the right databound control that can satisfy our needs. This article will help you to understand all these controls and their advantage in a particular scenario which can help us to choose the right control that can fit our needs.&lt;/td&gt;&lt;/tr&gt;&lt;tr align="left"&gt;&lt;th&gt;&lt;br&gt;&lt;font color="#d62c15"&gt;&lt;b&gt;New Codes Published&lt;/b&gt;&lt;/font&gt;&lt;/th&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/106-WaterMark-in-ASP-Net-TextBox-using-JavaScript.aspx"&gt;&lt;b&gt;WaterMark in ASP.Net TextBox using JavaScript&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/107-Encrypting-Decrypting-Connection-String-in-ASP-Net.aspx"&gt;&lt;b&gt;Encrypting/Decrypting Connection String in ASP.Net&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/108-Using-RegisterClientScriptBlock()-Methods-of-ClientScriptManager-Class.aspx"&gt;&lt;b&gt;Using RegisterClientScriptBlock() Methods of ClientScriptManager Class&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/109-Using-RegisterStartupScript()-Methods-of-ClientScriptManager-Class.aspx"&gt;&lt;b&gt;Using RegisterStartupScript() Methods of ClientScriptManager Class&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/110-Using-RegisterOnSubmitStatement()-Method-of-of-ClientScriptManager-Class-.aspx"&gt;&lt;b&gt;Using RegisterOnSubmitStatement() Method of of ClientScriptManager Class &lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/CodeDigest/111-Accessing-Master-Page-Members-from-Content-Pages-in-ASP-Net.aspx"&gt;&lt;b&gt;Accessing Master Page Members from Content Pages in ASP.Net&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr align="left"&gt;&lt;th&gt;&lt;br&gt;&lt;font color="#d62c15"&gt;&lt;b&gt;New FAQs Published&lt;/b&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/22-What-is-jQuery--How-to-use-it-in-ASP-Net-Pages-.aspx"&gt;&lt;b&gt;What is jQuery? How to use it in ASP.Net Pages?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/23-How-to-enable-jQuery-intellisense-in-Visual-Studio-2008-.aspx"&gt;&lt;b&gt;How to enable jQuery intellisense in Visual Studio 2008?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/24-How-to-use-jQuery-intellisense-in-an-external-javascript-file-.aspx"&gt;&lt;b&gt;How to use jQuery intellisense in an external javascript file?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/25-How-to-get-image-pieces-in-Silverlight2-.aspx"&gt;&lt;b&gt;How to get image pieces in Silverlight2?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/27-Can-you-elaborate-how-to-start-a-silverlight-application-with-Visual-Studio-.aspx"&gt;&lt;b&gt;Can you elaborate how to start a silverlight application with Visual Studio?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/30-How-does-Silverlight-2-differ-from-Adobe-Flash-.aspx"&gt;&lt;b&gt;How does Silverlight 2 differ from Adobe Flash?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.codedigest.com/FAQ/31-What-are-virtual-path-providers-.aspx"&gt;&lt;b&gt;What are virtual path providers?&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr align="left"&gt;&lt;th&gt;&lt;br&gt;&lt;font color="#d62c15"&gt;&lt;b&gt;Last Month Winners&lt;/b&gt;&lt;/font&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Winner:&lt;/b&gt;balamurali  balaji&lt;br&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;1.5" LCD Rechargeable Digital USB Photo Frame Keychain (107-Picture Memory Storage)&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Done:&lt;/b&gt;4 Articles Or 8 CodeSnippets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Winner:&lt;/b&gt;ph madala&lt;br&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;Stylish Moonbeam Bedside Digital Clock &lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Done:&lt;/b&gt;3 Articles Or 6 CodeSnippets&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Winner:&lt;/b&gt;balamurali  balaji&lt;br&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;LED keychain&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Done:&lt;/b&gt;For Participation &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Winner:&lt;/b&gt;Gaurav Arora&lt;br&gt;&lt;a href="http://www.codedigest.com/Prize.aspx"&gt;LED keychain&lt;/a&gt;&lt;br&gt;&lt;b&gt;Contribution Done:&lt;/b&gt;For Participation &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2985904525517356392?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2985904525517356392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/activities-of-codedigest-april-2009.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2985904525517356392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2985904525517356392'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/05/activities-of-codedigest-april-2009.html' title='Activities of CodeDigest - May&apos;2009'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2369534339771813743</id><published>2009-04-29T13:33:00.000+05:30</published><updated>2009-04-29T13:40:56.884+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='MVP'/><category scheme='http://www.blogger.com/atom/ns#' term='Dotnetspider'/><category scheme='http://www.blogger.com/atom/ns#' term='MVM'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><title type='text'>MVM from DotnetSpider.com</title><content type='html'>Its a very cool Morning today. I got a mail from &lt;strong&gt;Raghav&lt;/strong&gt; , The webmaster of &lt;a href="http://www.blogger.com/http//:dotnetspider.com"&gt;http//:dotnetspider.com &lt;/a&gt;regarding the &lt;strong&gt;&lt;u&gt;&lt;span style="color:#ff6666;"&gt;Most Valuable Member&lt;/span&gt;&lt;/u&gt;&lt;/strong&gt; award from Dotnetspider. This is the moment of my dreams come true. Here are the few lines from the mail :&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Congratulations from &lt;/em&gt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://dotnetspider.com/" target="_blank"&gt;&lt;em&gt;dotnetspider.com&lt;/em&gt;&lt;/a&gt;&lt;em&gt;! Your contributions to the technology world is recognized by &lt;/em&gt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://dotnetspider.com/" target="_blank"&gt;&lt;em&gt;dotnetspider.com&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, one of the most respected technology community. We are glad to inform you that you are selected as the MOST VALUABLE MEMBER (MVM) for your active participation and contribution to &lt;/em&gt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://dotnetspider.com/" target="_blank"&gt;&lt;em&gt;dotnetspider.com&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. You will be awarded with a certificate of appreciation from us.Visit this page for the list of winners - &lt;/em&gt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.dotnetspider.com/credits/Index.aspx" target="_blank"&gt;&lt;em&gt;http://www.dotnetspider.com/credits/Index.aspx&lt;/em&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;My thanks to DNS family for this award and special thanks to Raghav who have nominated me for this prestigious award.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2369534339771813743?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2369534339771813743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/mvm-from-dotnetspidercom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2369534339771813743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2369534339771813743'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/mvm-from-dotnetspidercom.html' title='MVM from DotnetSpider.com'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3978844800166192312</id><published>2009-04-18T14:07:00.000+05:30</published><updated>2009-04-18T14:09:17.805+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav'/><category scheme='http://www.blogger.com/atom/ns#' term='g_arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Tony'/><category scheme='http://www.blogger.com/atom/ns#' term='Raghav'/><category scheme='http://www.blogger.com/atom/ns#' term='Journey'/><category scheme='http://www.blogger.com/atom/ns#' term='Admin'/><category scheme='http://www.blogger.com/atom/ns#' term='Shuby'/><category scheme='http://www.blogger.com/atom/ns#' term='Webmaster'/><category scheme='http://www.blogger.com/atom/ns#' term='Gaurav Arora'/><category scheme='http://www.blogger.com/atom/ns#' term='Became The Webmaster from a Member'/><title type='text'>Became The Webmaster from a Member</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; "&gt;&lt;div style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; width: auto; font: normal normal normal 100%/normal Georgia, serif; text-align: left; "&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;Today I want to share my words of Journey with &lt;a href="http://dotnetspider.com/"&gt;&lt;span style="color: blue; "&gt;DNS&lt;/span&gt;&lt;/a&gt; from a &lt;b&gt;&lt;i&gt;Member &lt;/i&gt;&lt;/b&gt;to a &lt;b&gt;&lt;i&gt;Webmaster.&lt;/i&gt;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;My journey with DNS is started on &lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(0, 153, 0); "&gt;7/19/2008 5:11:57 PM&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;. I have registered with Dotnetspider.com a MicroSoft.Net community as a new member with profile &lt;a href="http://www.dotnetspider.com/member/g_arora.aspx"&gt;&lt;span style="color: blue; "&gt;Gaurav Arora&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;As I was a very new in this community site I was not aware from rules/regulations also, “&lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(0, 0, 102); "&gt;to err is human” &lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;so, its natural that I did mistakes. I am technical and know how to do Techie stuffs but not aware from the right way. In this period I have met many diamond members and other Sr. members who guided me &lt;/span&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(204, 0, 0); "&gt;"How to present stuffs in DNS?&lt;/span&gt;&lt;/i&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(255, 102, 102); "&gt;"&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;I met with &lt;a href="http://www.dotnetspider.com/member/raghavkumar1.aspx"&gt;&lt;span style="color: blue; "&gt;Raghav&lt;/span&gt;&lt;/a&gt; he guided me lot of stuffs. As time passed away I got matured in DNS and Raghav found me suitable for Editorial work and he selected me as an &lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(0, 51, 0); "&gt;Editor for DNS. &lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;This is the truning point of my life in DNS. Afterwards, Admins of DNS selected me Senior&lt;/span&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: rgb(0, 51, 0); "&gt; Editor.  &lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span class="Apple-style-span" style="font-family: Cambria; font-size: 21px; "&gt;Now I became a Diamond member and a &lt;a href="http://www.dotnetspider.com/pages/AboutUs.aspx"&gt;&lt;span style="color: blue; "&gt;Webmaster of DNS&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span class="Apple-style-span" style="font-family: Cambria; font-size: 21px; "&gt;Its just start of my Jorney, Tony who found me suitable for my work so, he gave me another responsibility of his another site &lt;a href="http://silverlightclub.com/"&gt;&lt;span style="color: blue; "&gt;Silverlight Club&lt;/span&gt;&lt;/a&gt; as a &lt;a href="http://www.silverlightclub.com/pages/AboutUs.aspx"&gt;&lt;span style="color: blue; "&gt;Webmaster&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span class="Apple-style-span" style="font-family: Cambria; font-size: 21px; "&gt;I am still trying to do my more efforts to prove myself also still learning more stuff.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: center; margin-bottom: 0.0001pt; line-height: normal; "&gt;&lt;b&gt;&lt;i&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: red; "&gt;&lt;span class="Apple-style-span" style="text-decoration: underline; -webkit-text-decorations-in-effect: underline; "&gt;The journey is still continue...&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;&lt;span class="Apple-style-span" style="text-decoration: underline; -webkit-text-decorations-in-effect: underline; "&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 16pt; font-family: Cambria, serif; color: black; "&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 16pt; line-height: 115%; font-family: Cambria, serif; "&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3978844800166192312?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3978844800166192312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/became-webmaster-from-member.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3978844800166192312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3978844800166192312'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/became-webmaster-from-member.html' title='Became The Webmaster from a Member'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8941167724411020185</id><published>2009-04-17T02:19:00.000+05:30</published><updated>2009-04-17T02:20:51.262+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Admin'/><category scheme='http://www.blogger.com/atom/ns#' term='Founder'/><category scheme='http://www.blogger.com/atom/ns#' term='Webmaster'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='About Us'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='silverlight games'/><title type='text'>Silverlight Games Site - Silverlight Club</title><content type='html'>Its a great day for me, on 01st April'2009 finally &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 255);"&gt;Silverlight Game&lt;/span&gt;&lt;/span&gt; Site launched.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The main motive of &lt;a href="http://silverlightclub.com/" target="_blank"&gt;Silverlight Club&lt;/a&gt; is  to promote &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Microsoft Silverlight&lt;/span&gt; . &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Tony John&lt;/span&gt; is the &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Founder &lt;/span&gt;and Admin of the Site. I am taking as a &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Webmaster &lt;/span&gt;of the site.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We are looking some good Silverlight Experts , also we are running a Contest on the Site for &lt;a href="http://www.silverlightclub.com/pages/Silverlight-App-posting-guidelines.aspx" targer="_blank"&gt;Silverlight Games&lt;/a&gt;. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To check more please visit :&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt; &lt;/span&gt;&lt;a href="http://www.silverlightclub.com/pages/AboutUs.aspx" target="_blank"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 153, 0);"&gt;http://www.silverlightclub.com/pages/AboutUs.aspx&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8941167724411020185?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8941167724411020185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/silverlight-games-site-silverlight-club.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8941167724411020185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8941167724411020185'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/04/silverlight-games-site-silverlight-club.html' title='Silverlight Games Site - Silverlight Club'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4692319852047388084</id><published>2009-03-25T18:01:00.000+05:30</published><updated>2009-03-25T18:03:44.155+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Beta'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><category scheme='http://www.blogger.com/atom/ns#' term='Release'/><title type='text'>MicroSoft Released - Silverlight 3- Beta</title><content type='html'>&lt;strong&gt;MicroSoft Released - Silverlight 3- Beta&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;MicroSoft &lt;/strong&gt;Released its &lt;strong&gt;Silverlight3 &lt;/strong&gt;beta in MIX [&lt;em&gt;conference for designers and developers at Las Vegas&lt;/em&gt;].&lt;br /&gt;&lt;br /&gt;Its available for download at:&lt;br /&gt;&lt;br /&gt;1. &lt;a href=http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=d09b6ecf-9a45-4d99-b752-2a330a937bc4&gt; MicroSOft Silverlight 3 SDK Beta 1 &lt;/a&gt;&lt;br /&gt;2. &lt;a href=http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=11dc7151-dbd6-4e39-878f-5081863cbb5d&gt; MicroSoft Silverlight 3 Tools Beta 1 for Visual Studio 2008 SP1&lt;/a&gt;&lt;br /&gt;3. &lt;a href=http://go.microsoft.com/fwlink/?linkid=143433&gt;The MicroSoft 3 beta Runtime&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4692319852047388084?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4692319852047388084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/03/microsoft-released-silverlight-3-beta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4692319852047388084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4692319852047388084'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/03/microsoft-released-silverlight-3-beta.html' title='MicroSoft Released - Silverlight 3- Beta'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-34161680650916401</id><published>2009-02-22T05:34:00.000+05:30</published><updated>2009-03-06T16:35:42.298+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASPX Pages Dynamically creation'/><category scheme='http://www.blogger.com/atom/ns#' term='A Step Ahead Series'/><title type='text'>How to create ASPX Page Dynamically - A Step Ahead Series?</title><content type='html'>&lt;h4&gt;Introduction&lt;/h4&gt;&lt;br /&gt;In a simple creating an &lt;font color=green&gt;aspx &lt;/font&gt; page dynamically is a very tedious job. Whenever we think for dynamically creation scenarios stuck in mind about the overload to server etc.  But with the help of this article one can attain the same as easily as creating another simple &lt;font color=green&gt;aspx &lt;/font&gt; page.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Need and Requirement&lt;/h4&gt;&lt;br /&gt;Now next words came to mind that what is the need to create an &lt;font color=green&gt;aspx &lt;/font&gt; page dynamically? Let me explain it:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;You need to create a page, based on selected requirement at the moment.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Need to create a page from static &lt;font color = green&gt;html &lt;/font&gt; contents.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Having huge data, need to represent in an individual page and its tough to store in database.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Article Scenario&lt;/h4&gt;&lt;br /&gt;As stated above, I choose a scenario where you are running a technical community and need to the template where member of your site will able to write some static html contents.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Explanation&lt;/h4&gt;&lt;br /&gt;For the same we need following pages:&lt;br /&gt;1. PageHeader.ascx&lt;br /&gt;This contains the header information of your page like LOGO etc.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;%@ Control Language="C#" AutoEventWireup="true" CodeFile="PageHeader.ascx.cs" Inherits="myTemplates_PageHeader" %&amp;gt;&lt;br /&gt;&amp;lt;link href="../style.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;  &amp;lt;asp:PlaceHolder ID ="plhImage" runat="server" /&amp;gt;&lt;br /&gt;  &amp;lt;ul class="menu"&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;HOME&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;About US&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Recent Posts&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Site Map&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Contact US&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Tags&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Meta&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;   &amp;lt;li&amp;gt;&amp;lt;a href="./default.aspx"&amp;gt;Most Emailed&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;  &amp;lt;/ul&amp;gt;&lt;br /&gt; &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;img src= http://www.dotnetspider.com/attachments/Resources/26301-22128-1.JPG /&gt;&lt;br /&gt;&lt;br /&gt;2. PageFooter.ascx&lt;br /&gt;Obvious it contains the Footer information.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;%@ Control Language="C#" AutoEventWireup="true" CodeFile="PageFooter.ascx.cs" Inherits="myTemplates_PageFooter" %&amp;gt;&lt;br /&gt;&amp;lt;link href="../style.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;br /&gt;&amp;lt;div id="footer"&amp;gt;&lt;br /&gt;  &amp;lt;div&amp;gt;&lt;br /&gt;   &amp;lt;a href="http://www.webdesign.org"&amp;gt;Web Design&amp;lt;/a&amp;gt; by &amp;lt;a href="http://www.freetemplatesonline.com"&amp;gt;Free Templates&amp;lt;/a&amp;gt; Online&amp;lt;br /&amp;gt;&lt;br /&gt;   &amp;lt;a href="#"&amp;gt;Terms of Use&amp;lt;/a&amp;gt; / &amp;lt;a href="#"&amp;gt;Privacy Policy&amp;lt;/a&amp;gt;&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &amp;lt;div class="centeral-block"&amp;gt;&lt;br /&gt;   &amp;lt;strong&amp;gt;New-York, USA&amp;lt;/strong&amp;gt;&lt;br /&gt;   11 Some Street Second Floor&amp;lt;br /&amp;gt; New York WA 02020&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt;  &amp;lt;div&amp;gt;&lt;br /&gt;   Tel/Fax : 1(800)123-4567&amp;lt;br /&amp;gt;&lt;br /&gt;   &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1(800)123-1234&amp;lt;br /&amp;gt;   &lt;br /&gt;   E-mail : &amp;lt;a href="#" id="mail"&amp;gt;info@yourcompany.com&amp;lt;/a&amp;gt;&lt;br /&gt;  &amp;lt;/div&amp;gt;&lt;br /&gt; &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;a href= http://www.dotnetspider.com/attachments/Resources/26301-221211-2.JPG &gt;Click to check Snapshot&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;3. createPage.ascx&lt;br /&gt;Definitely this is the main page, it just create a skeleton as per the above requirement and then segregate the contents and make the title.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;%@ Control Language="C#" AutoEventWireup="true" CodeFile="createPage.ascx.cs" Inherits="myTemplates_createPage" %&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;    &amp;lt;table&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                Page Title&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                &amp;lt;asp:TextBox ID="txtTitle" runat="server"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                Tags&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                &amp;lt;asp:TextBox ID="txtTags" runat="server"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                Description&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                &amp;lt;asp:TextBox ID="txtContent" runat="server" Height="292px" TextMode="MultiLine" Width="510px"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100%"&amp;gt;&lt;br /&gt;                &amp;lt;ul&amp;gt;&lt;br /&gt;                    &amp;lt;li&amp;gt;&amp;lt;font color="red"&amp;gt;You may use basic html tags like &amp;lt;H1&amp;gt; &amp;lt;H2&amp;gt; &amp;lt;B&amp;gt;&lt;br /&gt;                        &amp;lt;I&amp;gt; &amp;lt;FONT&amp;gt; etc. &amp;lt;/font&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;                    &amp;lt;li&amp;gt;&amp;lt;font color="red"&amp;gt;Tags like &amp;lt;BODY&amp;gt; &amp;lt;HEAD&amp;gt; &amp;lt;TABLE&amp;gt; are NOT allowed.&amp;lt;/font&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;                    &amp;lt;li&amp;gt;&amp;lt;font color="red"&amp;gt;Please check spelling before posting articles.&amp;lt;/font&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;                &amp;lt;/ul&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                &amp;lt;asp:Label ID="lblMessage" runat="server"&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100%"&amp;gt;&lt;br /&gt;                &amp;lt;asp:LinkButton ID="lnkNewPage" OnClick="lnkNewPage_Click" runat="server"&amp;gt;&amp;lt;/asp:LinkButton&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;        &lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td style="width: 100px"&amp;gt;&lt;br /&gt;                &amp;lt;asp:Button ID="btnGenerate" runat="server" OnClick="btnGenerate_Click" Text="Generate" /&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;    &amp;lt;/table&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;a href= http://www.dotnetspider.com/attachments/Resources/26301-221211-3.JPG&gt;Click to check Snapshot&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;4. Default.aspx&lt;br /&gt;This is the page or container which contains above all 3-controls.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" ValidateRequest="false" %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="myPage" TagName="aspxPage" Src="~/myTemplates/createPage.ascx" %&amp;gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="myPageHeader" TagName="PgHeader" Src="~/myTemplates/PageHeader.ascx" %&amp;gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="myPageFooter" TagName="PgFooter" Src="~/myTemplates/PageFooter.ascx" %&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;link href="style.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;    &amp;lt;form id="form1" runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;div&amp;gt;&lt;br /&gt;        &amp;lt;table width="100%"&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;                &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                    &amp;lt;myPageHeader:PgHeader ID="PgHeader1" runat="server" /&amp;gt;&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;                &amp;lt;td&amp;gt;&lt;br /&gt;                    &amp;lt;h2&amp;gt;&lt;br /&gt;                        Create Dynamic Page(S)&amp;lt;/h2&amp;gt;&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;                &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                    &amp;lt;myPage:aspxPage ID="asxPage1" runat="server" /&amp;gt;&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                &amp;lt;myPageFooter:PgFooter ID="PgFooter1" runat="server" /&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;/table&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;    &amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;5. myPageTemplate.tmp&lt;br /&gt;This is the template page for all pages&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;%@ Page Language="C#" CodeFileBaseClass="PageBase" AutoEventWireup="true" CodeFile ="myPageCode.cs" &lt;br /&gt;Inherits= "myPageCode" PageID="[ID]" MetaTitle="[MetaTitle]" MetaKeywords="[MetaKeywords]" %&amp;gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="myPageHeader" TagName="PgHeader" Src="~/myTemplates/PageHeader.ascx" %&amp;gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="myPageFooter" TagName="PgFooter" Src="~/myTemplates/PageFooter.ascx" %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;link href="style.css" rel="stylesheet" type="text/css" /&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;    &amp;lt;form id="form1" runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;div&amp;gt;&lt;br /&gt;        &amp;lt;table width="100%"&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;                &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                    &amp;lt;myPageHeader:PgHeader ID="PgHeader1" runat="server" /&amp;gt;&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;                &amp;lt;td&amp;gt;&lt;br /&gt;                    &amp;lt;h2&amp;gt;&lt;br /&gt;                         &amp;lt;%=MetaTitle%&amp;gt;&amp;lt;/h2&amp;gt;&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr class=content&amp;gt;&lt;br /&gt;                &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                    [PageContent]&lt;br /&gt;                &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;            &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td colspan="2"&amp;gt;&lt;br /&gt;                &amp;lt;myPageFooter:PgFooter ID="PgFooter1" runat="server" /&amp;gt;&lt;br /&gt;            &amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;/table&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;    &amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;6. myPageCode.cs&lt;br /&gt;A common code-behind page for all dynamic pages&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Web.Security;&lt;br /&gt;using System.Web.UI;&lt;br /&gt;using System.Web.UI.WebControls;&lt;br /&gt;using System.Web.UI.WebControls.WebParts;&lt;br /&gt;using System.Web.UI.HtmlControls;&lt;br /&gt;&lt;br /&gt;public partial class myPageCode : PageBase&lt;br /&gt;{&lt;br /&gt;    public String newPageID&lt;br /&gt;    {&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["newPageID"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["newPageID"]);&lt;br /&gt;            else&lt;br /&gt;                return "0";&lt;br /&gt;        }&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["newPageID"] = value;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        base.PageID = this.newPageID;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;7. PageBase.cs&lt;br /&gt;A pagebase which inherits &lt;font color = green&gt;System.Web.UI.Page&lt;/font&gt;.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using System.Web.Security;&lt;br /&gt;using System.Web.UI;&lt;br /&gt;using System.Web.UI.WebControls;&lt;br /&gt;using System.Web.UI.WebControls.WebParts;&lt;br /&gt;using System.Web.UI.HtmlControls;&lt;br /&gt;&lt;br /&gt;/// &lt;summary&gt;&lt;br /&gt;/// Summary description for PageBase&lt;br /&gt;/// &lt;/summary&gt;&lt;br /&gt;public class PageBase : System.Web.UI.Page&lt;br /&gt;{&lt;br /&gt;    public PageBase()&lt;br /&gt;    {&lt;br /&gt;        //&lt;br /&gt;        // TODO: Add constructor logic here&lt;br /&gt;        //&lt;br /&gt;    }&lt;br /&gt;    #region Properties&lt;br /&gt;    public String PageID&lt;br /&gt;    {&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["PageID"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["PageID"]);&lt;br /&gt;            else&lt;br /&gt;                return "0";&lt;br /&gt;        }&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["PageID"] = value;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    public String MetaTitle&lt;br /&gt;    {&lt;br /&gt;        get &lt;br /&gt;        {&lt;br /&gt;            if (ViewState["MetaTitle"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["MetaTitle"]);&lt;br /&gt;            else&lt;br /&gt;               return "No Title";&lt;br /&gt;        }&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["MetaTitle"] = value;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    public String MetaKeywords&lt;br /&gt;    {&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["MetaKeywords"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["MetaKeywords"]);&lt;br /&gt;            else&lt;br /&gt;                return "No Keywords";&lt;br /&gt;        }&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["MetaKeywords"] = value;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    #endregion&lt;br /&gt;&lt;br /&gt;    protected override void OnLoad(EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        if (!String.IsNullOrEmpty(MetaTitle))&lt;br /&gt;        {&lt;br /&gt;            HtmlMeta Title = new HtmlMeta();&lt;br /&gt;            Title.Name = "Title";&lt;br /&gt;            Title.Content = this.MetaTitle;&lt;br /&gt;            this.Header.Controls.Add(Title);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        if (!String.IsNullOrEmpty(MetaKeywords))&lt;br /&gt;        {&lt;br /&gt;            HtmlMeta Keyword = new HtmlMeta();&lt;br /&gt;            Keyword.Name = "Keywords";&lt;br /&gt;            Keyword.Content = this.MetaKeywords;&lt;br /&gt;            this.Header.Controls.Add(Keyword);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        //overide base&lt;br /&gt;        base.OnLoad(e);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    void Page_Error(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;//Write Some logic here&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;h5&gt;Important&lt;/h5&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt; Please note that I  don’t check for any validation&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Instead of the use of Custom Control you can use Master Pages too.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The same will create a good facility while you need to create dynamic pages.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;How to run attached code:&lt;/h5&gt;&lt;br /&gt;1. Download the zip file&lt;br /&gt;2. Open your Visual Studio2008&lt;br /&gt;3. Open WebProject select the specific folder&lt;br /&gt;4. Press F5 and enjoy&lt;br /&gt;&lt;br /&gt;Your suggestions are invited to improve this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-34161680650916401?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/34161680650916401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/how-to-create-aspx-page-dynamically.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/34161680650916401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/34161680650916401'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/how-to-create-aspx-page-dynamically.html' title='How to create ASPX Page Dynamically - A Step Ahead Series?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4596002530942797112</id><published>2009-02-14T17:43:00.000+05:30</published><updated>2009-02-14T17:55:45.168+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Static Constructor'/><category scheme='http://www.blogger.com/atom/ns#' term='Constructors'/><category scheme='http://www.blogger.com/atom/ns#' term='A Step Ahead Series'/><title type='text'>What are constructors in C# - A Step Ahead Series?</title><content type='html'>&lt;h4&gt;Introduction&lt;/h4&gt;&lt;br /&gt;In a simple words Constructor is nothing but a method, a special kind of method of a class, which gets executed when its (class) object is created.&lt;br /&gt;&lt;br /&gt;Now, let’s take above in broader sense, A constructor is a class method automatically executed whenever class’s object is created or whenever class is initialized. Consider following bit of code:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        public MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;      //Class members &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;In above snippet, try to change the name of constructor from MsDotNetHeaven to MsDotNetMentor and see whats happen, you have to put same name as you gave it to class.&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Behind the scenes:&lt;/h5&gt;&lt;br /&gt;What happened behind the scenes : whenever you try to create an object of class or initialize a class, then the default constructor is invoked.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//Initializes the Class  &lt;br /&gt;MsDotNetHeaven objMsDnH = new MsDotNetHeaven(); &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Types of Constructor&lt;/h4&gt;&lt;br /&gt;This is a n issue of debate but I always like to segregated Constructors in following types:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Default Constructor&lt;/li&gt;&lt;br /&gt;A constructor that takes no parameters is called a default constructor. Default constructors are invoked whenever an object is instantiated by using the new operator and no arguments are provided to new.&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Parameterized Constructor&lt;/li&gt;&lt;br /&gt;Besides a default constructor when its need to pass some argument on the initialization of a class a parameterized constructor is come to picture. It follows the same rules as default constructor with a difference that it has some parameters which also differentiate it from default constructor. Go through following snippet:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        public MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;        public MsDotNetHeaven(String strName)&lt;br /&gt;   {&lt;br /&gt;  //A parameterized Constructor having one parameter&lt;br /&gt;   }&lt;br /&gt;        &lt;br /&gt;  public MsDotNetHeaven(String strFirstName, String strLastName)&lt;br /&gt;   {&lt;br /&gt;  //A parameterized Constructor having two parameters&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;      //Class members &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt; &lt;br /&gt;1. A default constructor should be explicitly declared while declaring parameterized constructor.&lt;br /&gt;&lt;br /&gt;2. Some writer also take &lt;b&gt;Private constructor&lt;/b&gt; and &lt;b&gt;Static Constructor&lt;/b&gt; as types of constructor but in my view these are constructor with different modifiers so behave differ; I will cover these in next section.&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Access Modifiers and Prefix with Constructors&lt;/h4&gt;&lt;br /&gt;By default Constructors are &lt;font color=blue&gt;public&lt;/font&gt; but we can also use other modifiers and prefix like &lt;font color=blue&gt;private and static&lt;/font&gt;. With the use of these modifiers constructors behave differently:&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Using Access Modifier &lt;font color=blue&gt;private&lt;/font&gt; with Constructor&lt;/h5&gt;&lt;br /&gt;When put &lt;font color=blue&gt;private&lt;/font&gt; as access modifier to constructor then that constructor is known as &lt;font color=blue&gt;private Constructor&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;A private constructor is a special instance constructor. It is commonly used in classes that contain static members only. If a class has one or more private constructors and no public constructors, then other classes (except nested classes) are not allowed to create instances of this class.&lt;br /&gt;&lt;br /&gt;Some time there is a need where we have not allow outer world to get instantiate our class then we need to use &lt;font color=blue&gt;private &lt;/font&gt; modifier with constructor. Consider following piece of code:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        private MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor as private&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;      //Class members &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Now, whenever you try to invoke following piece of code:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//Initializes the Class  &lt;br /&gt;MsDotNetHeaven objMsDnH = new MsDotNetHeaven(); &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;it throws an error: Constructors. MsDotNetHeaven. MsDotNetHeaven ()' is inaccessible due to its protection level&lt;br /&gt;&lt;br /&gt;Now, question comes to mind if the above contains error then what the use is of &lt;font color=blue&gt;private constructor&lt;/font&gt;, we can make above class to be initialized by declaring another &lt;font color=blue&gt;public constructor&lt;/font&gt;, modify above code-snippet with bellow one:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        private MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor as private&lt;br /&gt;   }&lt;br /&gt;        public MsDotNetHeaven(String strName): this()&lt;br /&gt;   {&lt;br /&gt;  //A parameterized Constructor having one parameter&lt;br /&gt;  System.Console.WriteLine(“My name is : “ + strName);&lt;br /&gt;   }&lt;br /&gt;        &lt;br /&gt;  //Class members &lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Now, you can initialize class as follow:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//Initializes the Class  &lt;br /&gt;MsDotNetHeaven objMsDnH = new MsDotNetHeaven(“Gaurav Arora”); &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Using prefix &lt;font color=blue&gt;static&lt;/font&gt; with Constructor&lt;/h5&gt;&lt;br /&gt;With the use of &lt;font color=blue&gt;static&lt;/font&gt; with constructor gives a name as &lt;font color=blue&gt;static constructor&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;For C++ developers it’s a new concept introduced in C#. &lt;br /&gt;&lt;br /&gt;A static constructor is used to initialize any static data, or to perform a particular action that needs performed once only. It is called automatically before the first instance is created or any static members are referenced.&lt;br /&gt;Consider the following:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        static MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A static Constructor&lt;br /&gt;     // Can only access static members here.&lt;br /&gt;&lt;br /&gt;  System.Console.WriteLine("I am a static constructor.");&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;      //Class members &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Now whenever you create an instance of the class MsDotNetHeaven the line &lt;font color=red&gt;I am a static constructor get printed&lt;/font&gt;.&lt;br /&gt;&lt;br /&gt;Consider following piece of code:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;    {&lt;br /&gt;        static MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A static Constructor&lt;br /&gt;     // Can only access static members here.&lt;br /&gt;&lt;br /&gt;  System.Console.WriteLine("I am a static constructor.");&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;        public MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;      //Class members &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Above code is perfectly alright and will perform same result as earlier code.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Calling Parent Class Constructors in child class during inheritance&lt;/h4&gt;&lt;br /&gt;Now, suppose a scenario when you are inheriting a class and want to use Parent class constructor then how to attain that.&lt;br /&gt;&lt;br /&gt;Simple the same has been achieved by using &lt;font color=blue&gt;base()&lt;/font&gt;&lt;br /&gt;Consider following code-snippet&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class MsDotNetHeaven&lt;br /&gt;{&lt;br /&gt;        public MsDotNetHeaven()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;        public MsDotNetHeaven(String strName)&lt;br /&gt;   {&lt;br /&gt;  //A parameterized Constructor having one parameter&lt;br /&gt;   }&lt;br /&gt;        &lt;br /&gt;     //Class members &lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public class MsDotNetMentor : MsDotNetHeaven&lt;br /&gt;{&lt;br /&gt;        public MsDotNetMentor ()&lt;br /&gt;   {&lt;br /&gt;  //A default Constructor&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;        public MsDotNetMentor (String strName) : base(strName)&lt;br /&gt;   {&lt;br /&gt;  //A parameterized Constructor having one parameter&lt;br /&gt;   }&lt;br /&gt;        &lt;br /&gt;     //Class members &lt;br /&gt;&lt;br /&gt;static void Main()&lt;br /&gt;    {&lt;br /&gt;       MsDotNetMentor objMsDnM = new MsDotNetMentor(); //(A)&lt;br /&gt;    MsDotNetMentor objNameMsDnM = new MsDotNetMentor(“Gaurav Arora”); //(B)&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;(A) From above : the sequence of invoking a constructor is first public MsDotNetHeaven() and then public MsDotNetMentor() &lt;br /&gt;(B) From above : the sequence of invoking a constructor is public MsDotNetHeaven(String strName)and then public MsDotNetMentor(String strName)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt; &lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;A static constructor should not be declared with any access modifier. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;A static constructor does not accept parameters&lt;/li&gt;&lt;br /&gt;&lt;li&gt; A static constructor is called automatically.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; There is no way to call a static constructor  directly.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Can’t stop the execution of Static constructor&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Due to the scope of this article it might be possible that something I forgot please remind me if any :&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Important :&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Constructor is nothing but a special method, which initializes the class or its task to initialize the object of it class.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Its name must be same as the name of class&lt;/li&gt;&lt;br /&gt;&lt;li&gt;This is a special method as constructors do not have return types, not even void &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Constructor cannot return any value because they didn’t have any return type.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Constructor can’t be get inherited, although a derived class can class the base class constructor.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A class has atleast one constructor also known as default constructor [a constructor without parameter] &lt;/li&gt;&lt;br /&gt;&lt;li&gt;You have to explicitly write a default constructor while Overloading constructors.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; Concept declaring multiple constructors of a class with different sets of parameters known as Constructor overloading.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A constructor can be called another constructor using &lt;font color=blue&gt;this()&lt;/font&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4596002530942797112?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4596002530942797112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/what-are-constructors-in-c-step-ahead.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4596002530942797112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4596002530942797112'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/what-are-constructors-in-c-step-ahead.html' title='What are constructors in C# - A Step Ahead Series?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8039166381894177241</id><published>2009-02-10T19:37:00.000+05:30</published><updated>2009-02-10T19:47:19.544+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='A Step Ahead Series'/><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>LINQ Querry : A Step Ahead Series</title><content type='html'>&lt;b&gt;LINQ Querry : A Step Ahead Series&lt;/b&gt;&lt;br /&gt;&lt;b&gt;History:&lt;/b&gt;&lt;br /&gt;The article is related to previous posts :&lt;br /&gt;&lt;br /&gt;1. &lt;a href="http://www.dotnetspider.com/resources/25763-Anonymous-Types-LINQ-A-Step-Ahead-Series.aspx"&gt;Anonymous Types in LINQ: A Step Ahead Series&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2. &lt;a href="http://www.dotnetspider.com/resources/25787-How-Test-Anonymous-Type-Equality-LINQ-A.aspx"&gt;How to Test Anonymous Type Equality - LINQ: A Step Ahead Series&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Introduction:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;LINQ - &lt;/b&gt; Language Integreted Query is repeadily used in these days. The presented article is elaborate the idea "How to describe a LINQ Query".&lt;br /&gt;&lt;br /&gt;Simply, a query is an expression that retrieves data from a data source.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Scope:&lt;/b&gt;&lt;br /&gt;The scope of the presented article is upto its title and projected scenarios.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Basics&lt;/li&gt;&lt;br /&gt;&lt;li&gt;LINQ Actions&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Some basic example&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Creating a LINQ project using Visual Studio&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Now lets elaborate the topic in following points:&lt;br /&gt;&lt;br /&gt;1. &lt;b&gt;Operation of LINQ Query:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;LINQ query consists three distinct actions as defined bellow:&lt;br /&gt;&lt;br /&gt; (a) In this step LINQ gather the DataSource it may be any source of data.&lt;br /&gt; (b) In next step have to create the Query&lt;br /&gt; (c) Finally, execute the Query.&lt;br /&gt;&lt;br /&gt;Lest, go through the following code-lines and try to understand the above operations:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;class LINQQuery&lt;br /&gt;{        &lt;br /&gt;    static void Main()&lt;br /&gt;    {&lt;br /&gt;        &lt;br /&gt;        //  This is the Data source - Operation - I&lt;br /&gt;        int[] numbers = new int[7] { 0, 1, 2, 3, 4, 5, 6 };&lt;br /&gt;&lt;br /&gt;        //  Query Creation - Operation - II&lt;br /&gt;        var numQuery =&lt;br /&gt;            from num in numbers&lt;br /&gt;            where (num % 2) == 0&lt;br /&gt;            select num;&lt;br /&gt;&lt;br /&gt;        //  Query Execution - Operation - III&lt;br /&gt;        foreach (int num in numQuery)&lt;br /&gt;        {&lt;br /&gt;            Console.Write("{0,1} ", num);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Three actions of LINQ Query [adapted from MSDN - bb397906]&lt;br /&gt;&lt;img src="http://www.dotnetspider.com/attachments/Resources/25811-1092-LINQ%20Query.png" alt="LINQ Query Actions" /&gt;&lt;br /&gt;&lt;br /&gt;2. &lt;b&gt;Skip and Take:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Skip, SkipWhile, Take, and TakeWhile are used to partition collectionsinto two parts and then return one of the parts. These partition features are only implemented as extension methods.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;skip&lt;/i&gt; jumps to the indicated argument position in the sequence and returns everything after that.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;SkipWhile&lt;/i&gt; accepts a predicate and instead of using a position, it skips until the predicate evaluates to false. &lt;br /&gt;&lt;br /&gt;&lt;i&gt;Take&lt;/i&gt; grabs all of the elements up to the specified position in the index.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;TakeWhile&lt;/i&gt; grabs all of the items in a sequence as long as the predicate evaluates to true.&lt;br /&gt;&lt;br /&gt;3. &lt;b&gt;Create a LINQ Project:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;As per MSDN :&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To use LINQ to XML or LINQ to DataSet in either C# or VB.Net language, you must manually add namespaces and references as described in the following :&lt;br /&gt;&lt;br /&gt;If you are upgrading a project that you created by using an earlier version of Visual Studio, you may have to supply these or other LINQ -related references manually and also manually set the project to target .NET Framework version 3.5.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;To target the .NET Framework version 3.5&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;In Visual Studio, open a Visual Basic or C# project that was created in Visual Studio 2005 and follow the prompts to &lt;br /&gt;&lt;br /&gt;convert it to a Visual Studio 2008 project.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;For a C# project, click the Project menu, and then click Properties.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the Application property page, select .NET Framework 3.5 in the Target Framework drop-down list.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;For a Visual Basic project, click the Project menu, and then click Properties.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the Compile property page, click Advanced Compile Options and then select .NET Framework 3.5 in the Target Framework &lt;br /&gt;&lt;br /&gt;(all configurations) drop-down list.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Important Points:&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;LINQ queries start with the keyword from.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In a LINQ query, you are always working with objects.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;You an apply the basic operations to LINQ Query as follow:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Filtering &lt;/b&gt; is the common operation tyhrough which you can filter the data, consider following code:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//filter all employees on last name as 'Arora'&lt;br /&gt;var lnqueryNames = from empname in employee&lt;br /&gt;                           where empname.lastname == "Arora"&lt;br /&gt;                           select empname;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ordering &lt;/b&gt; sets the ordering for the output, lets take a loon in the following:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//display all Arora in ascending order with departments&lt;br /&gt;var lnqueryNames = from empname in employee&lt;br /&gt;                           where empname.lastname == "Arora"&lt;br /&gt;                           orderby empname.dept ascending&lt;br /&gt;                           select empname;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;b&gt;Ordering &lt;/b&gt; give the output in a group, consider following example:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;br /&gt;var lnqueryNames = from empname in employee&lt;br /&gt;                           group empname by empname.department;&lt;br /&gt;&lt;br /&gt;foreach (var empbydept in lnqueryNames)&lt;br /&gt;  {&lt;br /&gt;      Console.WriteLine(empbydept.Key);&lt;br /&gt;      foreach (Employee emp in empbydept)&lt;br /&gt;      {&lt;br /&gt;          Console.WriteLine("    {0}", emp.lastName);&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8039166381894177241?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8039166381894177241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/linq-querry-step-ahead-series.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8039166381894177241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8039166381894177241'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/linq-querry-step-ahead-series.html' title='LINQ Querry : A Step Ahead Series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8448962606508789718</id><published>2009-02-09T17:52:00.000+05:30</published><updated>2009-02-09T17:53:02.184+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Code Dom: A Step Ahead Series'/><category scheme='http://www.blogger.com/atom/ns#' term='Anonymous Types'/><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>How to Test Anonymous Type Equality - LINQ: A Step Ahead Series</title><content type='html'>&lt;b&gt;How to Test Anonymous Type Equality - LINQ: A Step Ahead Series&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;First of all Anonymous Type Equality : If two or more anonymous types have same order, number and member declaratory type amd name then the same anonymous type is defined. So, its permissible to use the referencial equality operator on these types.&lt;br /&gt;&lt;br /&gt;Now lets see the other face of the coin means of any of order, number and member declarator type and name is different then different anonymous type is defined for each. Then it throw compiler error while testing referential integrity.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt; &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Here you can use reflection to get the type information of anonymous types.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Use the Equals method (defined by all objects) to test equality of members.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Lets go through following lines :&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var paternalMember = new {Father = "R k Arora", City = "Nangal Dam"};&lt;br /&gt;var maternalMember = new {Mother = "Santosh Arora", City = "New Delhi"};&lt;br /&gt;&lt;br /&gt;var fatherHome = new {Father = "R k Arora", City = "Nangal Dam"};&lt;br /&gt;var motherHome = new {City = "New Delhi", Mother = "Santosh Arora"};&lt;br /&gt;&lt;br /&gt;//Compare member equality:&lt;br /&gt;paternalMember.Equals(fatherHome); //returns true&lt;br /&gt;paternalMember.Equals(fatherHome); //error&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;If you want to know more about Anonymous Type-LINQ please refer to &lt;a href="http://www.dotnetspider.com/resources/25763-Anonymous-Types-LINQ-A-Step-Ahead-Series.aspx"&gt;Anonymous Types in LINQ : A Step Ahead Series&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8448962606508789718?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8448962606508789718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/how-to-test-anonymous-type-equality.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8448962606508789718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8448962606508789718'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/how-to-test-anonymous-type-equality.html' title='How to Test Anonymous Type Equality - LINQ: A Step Ahead Series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-116545745027667429</id><published>2009-02-06T20:34:00.000+05:30</published><updated>2009-02-06T20:45:12.679+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Anonymous Types'/><category scheme='http://www.blogger.com/atom/ns#' term='LINQ'/><title type='text'>Anonymous Types in LINQ : A Step Ahead Series</title><content type='html'>&lt;h5&gt;Introduction:&lt;/h5&gt;&lt;br /&gt;Programers of Visual Basic the keyword &lt;i&gt;'var'&lt;/i&gt; is confusing here as the type &lt;i&gt;variants&lt;/i&gt; was used in Visual Basic.&lt;br /&gt;&lt;br /&gt;Here, the keyword &lt;i&gt;var&lt;/i&gt; tells to compiler emit a strong type based on t5e value of the operation on the right side.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Important:&lt;/b&gt;&lt;br /&gt;Anonymous types can be used to initialize simple types like integers and strings.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Rules : &lt;/b&gt; Following are the some basic rules to use &lt;b&gt;LINQ Anonymous Types&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Anonymous types can't be null.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Must always have an initial assignment.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Can be used with Simple or complex types, but composite anonymous types require member declaration &lt;br /&gt;&lt;br /&gt;example:&lt;br /&gt;&lt;blockquote&gt;var mylist = new {Topic="Anonymous-Types" [, declaratory = value, ...]}.&lt;/blockquote&gt;&lt;br /&gt;in above Topic is the member declaratory.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Supports intelliSense.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Cannot be used for class field.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Can be used with arrays.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Anonymous types are all derived from the Object type.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Now, lets explore some category or types of anonymous types:&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Simple Anonymous Type&lt;/h5&gt;&lt;br /&gt;With the keyword &lt;i&gt;var&lt;/i&gt; and giving the value of the variable in the right side of the assignment operator (=), anyone can declare the Simple  anonymous type.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var list = "Anonymous Types in LINQ : A Step Ahead Series";&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The anonymous type is assigned to the name on the left side of the assignment operator, and the type emitted by the compiler to Microsoft Intermediate Language (MSIL) is determined by the right side of the operator.&lt;br /&gt;&lt;br /&gt;The above line is identical in the MSIL if defined as following:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var list = "Anonymous Types in LINQ : A Step Ahead Series";&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Array Initializer Syntax&lt;/h5&gt;&lt;br /&gt;Anyone can use the Anonymous Type to initialize the array too but with a rigid rule that is : &lt;i&gt;new&lt;/i&gt; keyword must have to use.&lt;br /&gt;&lt;br /&gt;example:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var myArrayWithAntype = new int[]{ 1, 2, 12, 53, 58, 8, 2113, 2221 };&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;In above the array is Anonymous as it is defined with Annonymous Type  initialize rule.&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Composite Anonymous Types : Lets define&lt;/h5&gt;&lt;br /&gt;Now, lets take a look how to define &lt;b&gt;Composite Anonymous Type&lt;/b&gt;. Its called just as class without the "typed" class definition.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;var fullname = new {FirstName=”Gaurav”, LastName=”Arora”};&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;in above 'fullname' contains both first and last name. Go through following:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//throws an error&lt;br /&gt;Console.WriteLine(fullname.FirstName);&lt;br /&gt;&lt;br /&gt;//Displays fullname&lt;br /&gt;Console.WriteLine(fullname);&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note :&lt;/b&gt;&lt;br /&gt;1. Anonymous types are immutable.&lt;br /&gt;2. Within the scope of article we have supplied a little tricks, there can be generic anonymous methods, you can apply methods, can return anonymous values etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-116545745027667429?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/116545745027667429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/anonymous-types-in-linq-step-ahead.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/116545745027667429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/116545745027667429'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/02/anonymous-types-in-linq-step-ahead.html' title='Anonymous Types in LINQ : A Step Ahead Series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3043643355596767021</id><published>2009-01-30T21:50:00.001+05:30</published><updated>2009-02-01T16:14:21.437+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='State Management'/><title type='text'>State Management : A Step ahead series</title><content type='html'>&lt;h1&gt;State Management&lt;/h1&gt;&lt;br /&gt;The  State or Cache Management is nothing but the way to storing the data in Client-Side and in Server-Side using preity small memory.&lt;br /&gt;&lt;b&gt;There are two major category of the above :&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I. Server-Side State Management&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Session State: &lt;/h4&gt;Its nothing but defined as a period of time shared between the web application and user. Every user has individual session. Items/Objects can be placed into the Session which would only define these object for that user. Session contains key variables which help to identify the related values. This can be thought of as a hash table. Each user would represent a different key node in the hash identifying unique values. The Session variables will be clear by the application which can clear it, as well as through the timeout property in the web config file. Usually the timeout is 20 minutes by default.&lt;br /&gt;&lt;br /&gt;Session Variables are stored on the server, can hold any type of data including references, they are similar to global variables in a windows application and use HTTP cookies to store a key with which to locate user's session variables.&lt;br /&gt;&lt;br /&gt;The collection of session variables is indexed by the name of the variable or by an integer index. Session variables are created by referring to the session variable by name. You do not have to declare a session variable or explicitly add it to the collection.&lt;br /&gt;&lt;br /&gt;Lets get it cleared from following example:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;Session[“firstName”] = “Gaurav” //User’s first name&lt;br /&gt;Session[“lastName”] = “Arora” //User’s last name&lt;br /&gt;&lt;br /&gt;// Clear the session variable &lt;br /&gt;Session[“FirstName”] = null; &lt;br /&gt;&lt;br /&gt;//Clear all Session variables &lt;br /&gt;Session.Abandon();  &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;InProc&lt;/b&gt;—Stores Session state in the same process as the ASP.NET process [aspnet_wp.exe].&lt;br /&gt;&lt;br /&gt;&lt;b&gt;StateServer&lt;/b&gt;—Stores Session state in a Windows NT process, which is distinct from the ASP.NET process[aspnet_state.exe].&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SQLServer&lt;/b&gt;—Stores Session state in a SQL Server database.&lt;br /&gt;&lt;br /&gt;Both in &lt;b&gt;StateServer and SQLServer&lt;/b&gt; options, we need to ensure that the objects we cache are serializable as data storages are out-of-process systems. Both these options have impact on the application performance as data retrieval and saving operations take more time when compared to the InProc option. So based on our application requirement we should choose the option that best suits our requirement.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt;&lt;br /&gt;By default, ASP.NET session state is enabled for all ASP.NET applications.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;ASP.NET application object&lt;/h4&gt;&lt;br /&gt;ASP.NET provides an object called Application object to store data that is accessible to all user requests. The life span of this object is tied to the application and it is re-created every time the application starts. Unlike ASP.NETSession object this object is accessible to all user requests. Since this storage is created and maintained in an application domain space, this should not be used for data storage in a web farm scenario. This option is very useful to store data like the application metadata (CONFIG files data) that can be loaded to the Application object during application start up and can be used during the life of the application without reloading it every time for each user request. But if there is a requirement to invalidate the cached data whenever there is any change to the CONFIG files while the application is running, this option should not be used as it doesn't provide any feature to expire the cached data. So in this case other options like the ASP.NET Cache object should be used, which is explained below.&lt;br /&gt;&lt;h5&gt;Types of Cache –Dependencies&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;When anyone add an item to cache, he/she can define the dependency relationships that can force that item to be removed from the cache under specific activities of dependencies.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;For example&lt;/b&gt;: If the cache is dependent on file and when the file data changes you want the cache object to be updated.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Following are the difference dependencies:&lt;/b&gt;&lt;br /&gt;(a) &lt;b&gt;File Dependency :&lt;/b&gt;&lt;br /&gt;Allows invalidating a specific cache item when a disk based file or files change.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;object errorData;&lt;br /&gt; //Load errorData from errors.xml &lt;br /&gt;&lt;br /&gt; CacheDependency fileDependency = &lt;br /&gt;     new CacheDependency(Server.MapPath("errors.xml")); &lt;br /&gt; Cache.Insert("ERROR_INFO", errorData, fileDependency);&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;(b) &lt;b&gt;Time based expiration :&lt;/b&gt;&lt;br /&gt;Allows to invalidate a specific cache item depending on predefined time.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//Absolute Expiration&lt;br /&gt;&lt;br /&gt;Cache.Insert("EMP_NAME", "Shubhabrata", null, &lt;br /&gt;             DateTime.Now.AddDays(1), Cache.NoSlidingExpiration);&lt;br /&gt;&lt;br /&gt;//Sliding Expiration&lt;br /&gt;&lt;br /&gt;Cache.Insert("EMP_NAME", "Shubhabrata", null, &lt;br /&gt;             Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(60));&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;(c) &lt;b&gt;Key dependency :&lt;/b&gt;&lt;br /&gt;Allows to invalidate a specific cache item depending when another cache item changes.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;string[] relatedKeys = new string[1]; &lt;br /&gt;relatedKeys[0] = "EMP_NUM";&lt;br /&gt;CacheDependency keyDependency = new CacheDependency(null, relatedKeys); &lt;br /&gt;Cache["EMP_NUM"] = 5435;&lt;br /&gt;Cache.Insert("EMP_NAME", "Shubhabrata", keyDependency);&lt;br /&gt;Cache.Insert("EMP_ADDR", "Bhubaneswar", keyDependency);&lt;br /&gt;Cache.Insert("EMP_SAL", "5555USD", keyDependency);&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;.NET remoting&lt;/h4&gt;&lt;br /&gt;You might be thinking how .NET remoting can be used for data caching? The same question came to my mind when I heard about it for the first time. As you know the .NET remoting singleton object shares the same instance with multiple clients so singleton objects can be used to store and share data between different client invocations. Since .NET remoting can be used outside the process and machine, this option is very useful when we want to cache data and share it across servers and users particularly in a web farm scenario. In this approach we can store the data as member variables of singleton remoting object and provide methods to read and save data. But while implementing this we need to ensure that the remoting object used as cache is not destroyed by the garbage collector. For that we will have to set the remoting cache object's lease period to infinite so that the lease period never times out. We can do that by overriding the InitializeLifetimeService method of MarshalByRefObject and return null from this method. But the only issue with this approach is performance. As the analysis says the performance is very poor in this approach when compared to other approaches. Anyway it is up to the application designers/developers to analyze different options and use the best one that suits the requirement.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Memory-mapped files&lt;/h4&gt;&lt;br /&gt;You all know what a memory-mapped file is. It is basically about mapping a file on disk to a specific range of addresses in the application's process address space. This option allows different processes to use the same data by increasing the application performance. As using memory-mapped file is not very popular among .NET developers, I would personally not suggest this approach as implementing this involves a lot of complexities and also .NET Framework doesn't support this. But if anyone is very much interested in using this approach then they will have to develop their own custom solution as per their own requirement.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Static variables&lt;/h4&gt;&lt;br /&gt;We use static variables for storing data or objects globally so that it can be accessed during the life of the application. Similarly, in ASP.NET we can use static objects for caching data and we can also provide methods to retrieve and save data to the cache. As static variables are stored in the process area, performance wise it is faster. But since it is very difficult to implement expiration policies and dependencies incase of static variables, I generally prefer ASP.NET cache object over this option. Another problem is that the custom static cache object has to be thread-safe which has to be implemented carefully.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Example:&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public class CustomCache&lt;br /&gt;{&lt;br /&gt;    //Synchronized to implement thread-safe&lt;br /&gt;&lt;br /&gt;    static Hashtable _myCache = &lt;br /&gt;             Hashtable.Synchronized(new Hashtable());&lt;br /&gt;    &lt;br /&gt;    public static object GetData(object key)&lt;br /&gt;    {&lt;br /&gt;        return _myCache[key];&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public static void SetData(object key, object val)&lt;br /&gt;    {&lt;br /&gt;        _myCache[key] = val;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;II. &lt;b&gt;Client-Side State Management&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Cookies&lt;/h4&gt;&lt;br /&gt;Cookie is a very familiar term in web development environment. Cookie is a client-side storage that is sent to the server for each request and also received as response back from the server. Because of its size limitation (4096 bytes) it should be used for storing small amount of data. Expiration policies can be set for cookies to invalidate the items after a certain period of time. The following example shows how Cookie can be used in an ASP.NET application:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;if (this.Request.Cookies["MY_NAME"] == null) &lt;br /&gt;{ &lt;br /&gt;    this.Response.Cookies.Add(new HttpCookie("MY_NAME", &lt;br /&gt;                                       "Shubhabrata Mohanty")); &lt;br /&gt;} &lt;br /&gt;else &lt;br /&gt;{ &lt;br /&gt;    this.Response.Write(this.Request.Cookies["MY_NAME"].Value); &lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;ViewState&lt;/h4&gt;&lt;br /&gt;ASP.NET ViewState is a new concept. Here the data related to the pages and controls are stored in ViewState which retains the values across multiple requests to the server. If you remember correctly, in VB-ASP applications we used to store data across multiple requests using hidden fields. ViewState is actually implemented internally as hidden fields in ASP.NET but here the data is hashed to improve security as against hidden fields. To see how ViewState is implemented, you can view the source of the page in which ViewState is used in the Internet browser. ViewState should not be used to store large amounts of data as it is passed to the server for each request&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;protected void Page_Load(object sender, EventArgs e) &lt;br /&gt;{&lt;br /&gt;    if (this.ViewState["MY_NAME"] == null) &lt;br /&gt;    { &lt;br /&gt;        this.ViewState["MY_NAME"] = "Shuby";&lt;br /&gt;    } &lt;br /&gt;    &lt;br /&gt;    //txtName is a TextBox control &lt;br /&gt;&lt;br /&gt;    this.txtName.Text = this.ViewState["MY_NAME"].ToString(); &lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Hidden fields&lt;/h4&gt;&lt;br /&gt;Hidden fields are very popular among VB-ASP web developers. Hidden field is similar to any other control in a page but the visible state of this control is always false. Like ViewState we should not use it for storing large amounts of data. &lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt;Similarly hidden frames can be used to cache data in the client side. But please note that hidden frames are not supported by all Internet browsers.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;!--In ASP.NET--&amp;gt;&lt;br /&gt;&amp;lt;asp:HiddenField ID="myHiddenField" Value="Shuby"  runat="server" /&amp;gt;     &lt;br /&gt;                                &lt;br /&gt;&amp;lt;!--In HTML--&gt;&lt;br /&gt;&amp;lt;input id="myHiddenField" type="hidden" value="Shuby" /&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;h4&gt;Query Strings&lt;/h4&gt;&lt;br /&gt;&lt;br /&gt;Query strings provide a simple but limited way of maintaining some state information.You can easily pass information from one page to another, But most browsers and client devices impose a 255-character limit on the length of the URL. In addition, the query values are exposed to the Internet via the URL so in some cases security may be an issue. &lt;br /&gt;&lt;br /&gt;&lt;a href=http://www.msdotnetheaven.com/?authorid=4&gt;http://www.msdotnetheaven.com/?authorid=4&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Example:&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;string authorid;&lt;br /&gt;authorid=Request.Params[“authorid”];&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note&lt;/b&gt;: You can only use HTTP-Get method to post the web page, or you will never get the value from query strings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3043643355596767021?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3043643355596767021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/state-management-step-ahead-series.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3043643355596767021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3043643355596767021'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/state-management-step-ahead-series.html' title='State Management : A Step ahead series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4382054187989247131</id><published>2009-01-29T14:01:00.000+05:30</published><updated>2009-01-29T14:03:07.005+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><title type='text'>Build your website through DataBase using IronSpeed</title><content type='html'>&lt;b&gt;Iron Speed : &lt;/b&gt; Provides facility to automatically generate asp.net web site directly from database.&lt;br /&gt;&lt;br /&gt;Generate database and reporting applications for .NET in minutes. Quickly create visually stunning, feature-rich Web 2.0 applications that are easy to customize and ready to deploy. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Working : &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Simply point to an existing database and let Iron Speed Designer build a sophisticated, database-driven application that's ready to deploy. In just minutes, Iron Speed Designer generates your application's ASPX pages, user interface code, data access logic and SQL statements. Say good-bye to hand-coding! &lt;br /&gt;&lt;br /&gt;Refer : &lt;a href=http://www.ironspeed.com/products&gt;http://www.ironspeed.com/products&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Features:&lt;/b&gt;&lt;br /&gt;1. Sophisticated pages and reports&lt;br /&gt;2. Visual Stunning web application&lt;br /&gt;3. International Language Support&lt;br /&gt;4. Application Security&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4382054187989247131?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4382054187989247131/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/build-your-website-through-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4382054187989247131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4382054187989247131'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/build-your-website-through-database.html' title='Build your website through DataBase using IronSpeed'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5202400538114259514</id><published>2009-01-28T21:04:00.000+05:30</published><updated>2009-01-28T21:05:11.554+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Virtual Path Provider</title><content type='html'>Its the path providing facility to provide the virtual content to compiler. For example, a virtual path provider provides a means to supply content from locations other than the file system.&lt;br /&gt;&lt;br /&gt;To attain the same following step(s) are required :&lt;br /&gt;&lt;br /&gt;1. Create a VirtualPathProvider class, and implement all the required methods to handle files and folder requests.&lt;br /&gt;&lt;br /&gt;2. Register the virtual path provider to let the ASP.NET hosting environment know where the content will be served from.&lt;br /&gt;&lt;br /&gt;3. Create VirtualFile and VirtualDirectory objects to stream the content.&lt;br /&gt;Visit : http://support.microsoft.com/kb/910441&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5202400538114259514?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5202400538114259514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/virtual-path-provider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5202400538114259514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5202400538114259514'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/virtual-path-provider.html' title='Virtual Path Provider'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1543457026125162129</id><published>2009-01-27T20:55:00.000+05:30</published><updated>2009-01-27T21:00:47.364+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='XAML'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><title type='text'>XAML in .net : A Step Ahead Series</title><content type='html'>&lt;b&gt;XAML : &lt;/b&gt; stands for eXtensible Application Markup Language  and pronounced as &lt;strong&gt;zammel&lt;/strong&gt;".&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;XAML&lt;/strong&gt; combined with the next-gen Windows graphics kernel (code-named Avalon) is an all-in-one markup language for hypertext (HTML), vector graphics (SVG), animations (Flash,SMIL), print documents (PDF,XSL-FO), forms (XForms,XUL), and much more. &lt;br /&gt;&lt;br /&gt;The best of both worlds: In the XAML world there's no longer a difference between a web application and a windows application. Windows is the browser kernel and Internet Explorer is just a shell. &lt;br /&gt;&lt;br /&gt;The best of all worlds: A single programming model for media, documents and applications. &lt;br /&gt;&lt;br /&gt;A typical XAML example:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&amp;lt;Window Text="Xul Challenge 2004"&amp;gt;&lt;br /&gt;  &amp;lt;FlowPanel&amp;gt;&lt;br /&gt;    &amp;lt;SimpleText&amp;gt;Counter Sample&amp;lt;/SimpleText&amp;gt;&lt;br /&gt;    &amp;lt;TextBox ID="ValueTextBox" HorizontalAlignment="Center" IsReadOnly="True"/&amp;gt;&lt;br /&gt;    &amp;lt;FlowPanel HorizontalAlignment="Center" Width="100%"&amp;gt;&lt;br /&gt;       &amp;lt;Button Click="Dec"&amp;gt;Dec (-)&amp;lt;/Button&amp;gt;&lt;br /&gt;       &amp;lt;Button Click="Clear"&amp;gt;Clear&amp;lt;/Button&amp;gt;&lt;br /&gt;       &amp;lt;Button Click="Inc"&amp;gt;Inc (+)&amp;lt;/Button&amp;gt;&lt;br /&gt;    &amp;lt;/FlowPanel&amp;gt;&lt;br /&gt;  &amp;lt;/FlowPanel&amp;gt;&lt;br /&gt;&amp;lt;/Window&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;b&amp;gt;C# vs. XAML&amp;lt;/b&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;1. XAML-Example&lt;br /&gt;&amp;lt;TextPanel &lt;br /&gt;     Background="BlanchedAlmond" &lt;br /&gt;     FontFamily="Comic sans MS" &lt;br /&gt;     FontSize="36pt"&lt;br /&gt;     HorizontalAlignment="Center"&amp;gt;&lt;br /&gt;    Hello, world!&lt;br /&gt;&amp;lt;/TextPanel&amp;gt;&lt;br /&gt;&lt;br /&gt;2. C#-Example&lt;br /&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Windows;&lt;br /&gt;using System.Windows.Controls;&lt;br /&gt;using System.Windows.Media;&lt;br /&gt;&lt;br /&gt;class HelloWorldApp : Application&lt;br /&gt;{&lt;br /&gt;   static void Main()&lt;br /&gt;   {&lt;br /&gt;       HelloWorldApp app = new HelloWorldApp();&lt;br /&gt;       app.Run();&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   protected override void OnStartingUp( StartingUpCancelEventArgs args )&lt;br /&gt;   {&lt;br /&gt;       Window win = new Window();&lt;br /&gt;       TextPanel tp = new TextPanel();&lt;br /&gt;&lt;br /&gt;       tp.Background = Brushes.BlanchedAlmond;&lt;br /&gt;       tp.FontFamily = "Comic sans MS";&lt;br /&gt;       tp.FontSize = new FontSize( 36f, FontSizeType.Point);&lt;br /&gt;       tp.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;&lt;br /&gt;       tp.TextRange.Text = "Hello, world";&lt;br /&gt;          &lt;br /&gt;       win.Children.Add(tp);&lt;br /&gt;       win.Show();&lt;br /&gt;   }&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For more details, please refer to:&lt;br /&gt;&lt;br /&gt;1. http://msdn.microsoft.com/en-us/library/ms752059.aspx&lt;br /&gt;2. http://xaml.sourceforge.net/talk/dotnet-dec-2004/slides.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1543457026125162129?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1543457026125162129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/xaml-in-net-step-ahead-series.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1543457026125162129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1543457026125162129'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/xaml-in-net-step-ahead-series.html' title='XAML in .net : A Step Ahead Series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8456584810802163075</id><published>2009-01-25T18:35:00.000+05:30</published><updated>2009-01-25T19:06:02.450+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='caching'/><category scheme='http://www.blogger.com/atom/ns#' term='application'/><category scheme='http://www.blogger.com/atom/ns#' term='client-side'/><category scheme='http://www.blogger.com/atom/ns#' term='server-side'/><category scheme='http://www.blogger.com/atom/ns#' term='State Management'/><category scheme='http://www.blogger.com/atom/ns#' term='cache'/><category scheme='http://www.blogger.com/atom/ns#' term='session'/><category scheme='http://www.blogger.com/atom/ns#' term='.net remoting'/><title type='text'>State Management</title><content type='html'>&lt;div&gt;The  State or Cache Management is nothing but the way to storing the data in Client-Side and in Server-Side using preity small memory.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;There are two major category of the above :&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;I.&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Server-Side State Management&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Session State:&lt;/span&gt;&lt;/span&gt; Its nothing but defined as a period of time shared between the web application and user. Every user has individual session. Items/Objects can be placed into the Session which would only define these object for that user. Session contains key variables which help to identify the related values. This can be thought of as a hash table. Each user would represent a different key node in the hash identifying unique values. The Session variables will be clear by the application which can clear it, as well as through the timeout property in the web config file. Usually the timeout is 20 minutes by default.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Session Variables are stored on the server, can hold any type of data including references, they are similar to global variables in a windows application and use HTTP cookies to store a key with which to locate user's session variables.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The collection of session variables is indexed by the name of the variable or by an integer index. Session variables are created by referring to the session variable by name. You do not have to declare a session variable or explicitly add it to the collection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Lets get it cleared from following example:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Session[“firstName”] = “Gaurav”&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//User’s first name&lt;/div&gt;&lt;div&gt;Session[“lastName”] = “Arora”&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;//User’s last name&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;// Clear the session variable &lt;/div&gt;&lt;div&gt;Session[“FirstName”] = null; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;//Clear all Session variables &lt;/div&gt;&lt;div&gt;Session.Abandon();  &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;InProc&lt;/span&gt;—Stores Session state in the same process as the ASP.NET process [aspnet_wp.exe].&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;StateServer&lt;/span&gt;—Stores Session state in a Windows NT process, which is distinct from the ASP.NET process[aspnet_state.exe].&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;SQLServer&lt;/span&gt;—Stores Session state in a SQL Server database.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Both in StateServer and SQLServer options, we need to ensure that the objects we cache are serializable as data storages are out-of-process systems. Both these options have impact on the application performance as data retrieval and saving operations take more time when compared to the InProc option. So based on our application requirement we should choose the option that best suits our requirement.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Note:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;By default, ASP.NET session state is enabled for all ASP.NET applications.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;ASP.NET application object&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ASP.NET provides an object called Application object to store data that is accessible to all user requests. The life span of this object is tied to the application and it is re-created every time the application starts. Unlike ASP.NETSession object this object is accessible to all user requests. Since this storage is created and maintained in an application domain space, this should not be used for data storage in a web farm scenario. This option is very useful to store data like the application metadata (CONFIG files data) that can be loaded to the Application object during application start up and can be used during the life of the application without reloading it every time for each user request. But if there is a requirement to invalidate the cached data whenever there is any change to the CONFIG files while the application is running, this option should not be used as it doesn't provide any feature to expire the cached data. So in this case other options like the ASP.NET Cache object should be used, which is explained below.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Types of Cache –Dependencies&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When anyone add an item to cache, he/she can define the dependency relationships that can force that item to be removed from the cache under specific activities of dependencies.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;For example:&lt;/span&gt; If the cache is dependent on file and when the file data changes you want the cache object to be updated.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Following are the difference dependencies:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;(a)&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;File Dependency :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Allows invalidating a specific cache item when a disk based file or files change.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;object errorData;&lt;/div&gt;&lt;div&gt; //Load errorData from errors.xml &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; CacheDependency fileDependency = &lt;/div&gt;&lt;div&gt;     new CacheDependency(Server.MapPath("errors.xml")); &lt;/div&gt;&lt;div&gt; Cache.Insert("ERROR_INFO", errorData, fileDependency);&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;(b)&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Time based expiration :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Allows to invalidate a specific cache item depending on predefined time.&lt;/span&gt;&lt;/span&gt;&lt;/div&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;blockquote&gt;&lt;div&gt;//Absolute Expiration&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cache.Insert("EMP_NAME", "Shubhabrata", null, &lt;/div&gt;&lt;div&gt;             DateTime.Now.AddDays(1), Cache.NoSlidingExpiration);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;//Sliding Expiration&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cache.Insert("EMP_NAME", "Shubhabrata", null, &lt;/div&gt;&lt;div&gt;             Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(60));&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;(c)&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Key dependency :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Allows to invalidate a specific cache item depending when another cache item changes.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;string[] relatedKeys = new string[1]; &lt;/div&gt;&lt;div&gt;relatedKeys[0] = "EMP_NUM";&lt;/div&gt;&lt;div&gt;CacheDependency keyDependency = new CacheDependency(null, relatedKeys); &lt;/div&gt;&lt;div&gt;Cache["EMP_NUM"] = 5435;&lt;/div&gt;&lt;div&gt;Cache.Insert("EMP_NAME", "Shubhabrata", keyDependency);&lt;/div&gt;&lt;div&gt;Cache.Insert("EMP_ADDR", "Bhubaneswar", keyDependency);&lt;/div&gt;&lt;div&gt;Cache.Insert("EMP_SAL", "5555USD", keyDependency);&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;.NET remoting&lt;/span&gt;&lt;/div&gt;&lt;div&gt;You might be thinking how .NET remoting can be used for data caching? The same question came to my mind when I heard about it for the first time. As you know the .NET remoting singleton object shares the same instance with multiple clients so singleton objects can be used to store and share data between different client invocations. Since .NET remoting can be used outside the process and machine, this option is very useful when we want to cache data and share it across servers and users particularly in a web farm scenario. In this approach we can store the data as member variables of singleton remoting object and provide methods to read and save data. But while implementing this we need to ensure that the remoting object used as cache is not destroyed by the garbage collector. For that we will have to set the remoting cache object's lease period to infinite so that the lease period never times out. We can do that by overriding the InitializeLifetimeService method of MarshalByRefObject and return null from this method. But the only issue with this approach is performance. As the analysis says the performance is very poor in this approach when compared to other approaches. Anyway it is up to the application designers/developers to analyze different options and use the best one that suits the requirement.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Memory-mapped files&lt;/span&gt;&lt;/div&gt;&lt;div&gt;You all know what a memory-mapped file is. It is basically about mapping a file on disk to a specific range of addresses in the application's process address space. This option allows different processes to use the same data by increasing the application performance. As using memory-mapped file is not very popular among .NET developers, I would personally not suggest this approach as implementing this involves a lot of complexities and also .NET Framework doesn't support this. But if anyone is very much interested in using this approach then they will have to develop their own custom solution as per their own requirement.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Static variables&lt;/span&gt;&lt;/div&gt;&lt;div&gt;We use static variables for storing data or objects globally so that it can be accessed during the life of the application. Similarly, in ASP.NET we can use static objects for caching data and we can also provide methods to retrieve and save data to the cache. As static variables are stored in the process area, performance wise it is faster. But since it is very difficult to implement expiration policies and dependencies incase of static variables, I generally prefer ASP.NET cache object over this option. Another problem is that the custom static cache object has to be thread-safe which has to be implemented carefully.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Example:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;public class CustomCache&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;    //Synchronized to implement thread-safe&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;    static Hashtable _myCache = &lt;/div&gt;&lt;div&gt;             Hashtable.Synchronized(new Hashtable());&lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;div&gt;    public static object GetData(object key)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        return _myCache[key];&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;div&gt;    public static void SetData(object key, object val)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        _myCache[key] = val;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;II.&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Client-Side State Management&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Cookies&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Cookie is a very familiar term in web development environment. Cookie is a client-side storage that is sent to the server for each request and also received as response back from the server. Because of its size limitation (4096 bytes) it should be used for storing small amount of data. Expiration policies can be set for cookies to invalidate the items after a certain period of time. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The following example shows how Cookie can be used in an ASP.NET application:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;if (this.Request.Cookies["MY_NAME"] == null) &lt;/div&gt;&lt;div&gt;{ &lt;/div&gt;&lt;div&gt;    this.Response.Cookies.Add(new HttpCookie("MY_NAME", &lt;/div&gt;&lt;div&gt;                                       "Shubhabrata Mohanty")); &lt;/div&gt;&lt;div&gt;} &lt;/div&gt;&lt;div&gt;else &lt;/div&gt;&lt;div&gt;{ &lt;/div&gt;&lt;div&gt;    this.Response.Write(this.Request.Cookies["MY_NAME"].Value); &lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;ViewState&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ASP.NET ViewState is a new concept. Here the data related to the pages and controls are stored in ViewState which retains the values across multiple requests to the server. If you remember correctly, in VB-ASP applications we used to store data across multiple requests using hidden fields. ViewState is actually implemented internally as hidden fields in ASP.NET but here the data is hashed to improve security as against hidden fields. To see how ViewState is implemented, you can view the source of the page in which ViewState is used in the Internet browser. ViewState should not be used to store large amounts of data as it is passed to the server for each request&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;protected void Page_Load(object sender, EventArgs e) &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;    if (this.ViewState["MY_NAME"] == null) &lt;/div&gt;&lt;div&gt;    { &lt;/div&gt;&lt;div&gt;        this.ViewState["MY_NAME"] = "Shuby";&lt;/div&gt;&lt;div&gt;    } &lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;div&gt;    //txtName is a TextBox control &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;    this.txtName.Text = this.ViewState["MY_NAME"].ToString(); &lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Hidden fields&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Hidden fields are very popular among VB-ASP web developers. Hidden field is similar to any other control in a page but the visible state of this control is always false. Like ViewState we should not use it for storing large amounts of data. &lt;/div&gt;&lt;div&gt;Note:Similarly hidden frames can be used to cache data in the client side. But please note that hidden frames are not supported by all Internet browsers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&amp;lt;!--In ASP.NET--&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;lt;asp:hiddenfield id="myHiddenField" value="Shuby" runat="server" /&amp;gt;&lt;div&gt;&amp;lt;!--In HTML--&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;lt;input id="myHiddenField" type="hidden" value="Shuby"&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&amp;lt;/asp:hiddenfield&amp;gt;&lt;/asp:hiddenfield&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Query Strings&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Query strings provide a simple but limited way of maintaining some state information.You can easily pass information from one page to another, But most browsers and client devices impose a 255-character limit on the length of the URL. In addition, the query values are exposed to the Internet via the URL so in some cases security may be an issue. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;http://www.msdotnetheaven.com/?authorid=4&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Example:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;string authorid;&lt;/div&gt;&lt;div&gt;authorid=Request.Params[“authorid”];&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Note:&lt;/span&gt;&lt;/span&gt; You can only use HTTP-Get method to post the web page, or you will never get the value from query strings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8456584810802163075?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8456584810802163075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/state-management.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8456584810802163075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8456584810802163075'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/state-management.html' title='State Management'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8505880300919355020</id><published>2009-01-25T14:02:00.000+05:30</published><updated>2009-01-25T17:41:46.670+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='viewstate'/><category scheme='http://www.blogger.com/atom/ns#' term='cache'/><category scheme='http://www.blogger.com/atom/ns#' term='session'/><title type='text'>Difference between cache, session and viewstate</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Cache:&lt;/span&gt; Its nothing but a thought kind of memory. In respect to asp.net it’s the memory of the machine/server from where the source-code is running. It is the one way which allow to store complex data for reusability.&lt;/div&gt;&lt;div&gt;Now think a criteria where clients access an ASP.NET page, there are basically two ways to provide them with the information they need:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;The ASP.NET page can either obtain information from server resources, such as  from data that has been persisted to a database, or&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The ASP.NET page can obtain information from within the application.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Retrieving information from a resource outside the application will require more processing steps, and will therefore require more time and resources on the server than if the information can be obtained from within the application space.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, suppose the information’s which sent to browser’s have already been prepared then how faster the process of web-page.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;The ASP.NET 3.5 Framework supports the following types of caching:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Page Output Caching :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Page Output Caching caches an entire page.          &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Partial Page Caching :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Partial Page Caching enables you to get around this problem by enabling you to cache only particular regions of a page.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;DataSource Caching:&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;You use DataSource Caching with the different ASP.NET DataSource controls such as the SqlDataSource and ObjectDataSource controls. When you enable caching with a DataSource control, the DataSource control caches the data that it represents.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Data Caching :&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Finally, Data Caching is the fundamental caching mechanism. Behind the scenes, all the other types of caching use Data Caching. You can use Data Caching to cache arbitrary objects in memory. For example, you can use Data Caching to cache a DataSet across multiple pages in a web application.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Note:&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;&lt;div&gt;The Cache object can also have an expiration which would allow us to reinstitute data into the memory in intervals. Using the same example as above, we can make the cache expire every two hours, and repopulate the data. It would do this every 2 hours throughout the day, allowing the most up to date data to be fetched. Below is an example of how something can be put into the cache: &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Referenced from msdn &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.web.caching.cache(VS.80).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.web.caching.cache(VS.80).aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;public void AddItemToCache(Object sender, EventArgs e) &lt;/div&gt;&lt;div&gt;{ &lt;/div&gt;&lt;div&gt;    itemRemoved = false; &lt;/div&gt;&lt;div&gt;    onRemove = new CacheItemRemovedCallback(this.RemovedCallback); &lt;/div&gt;&lt;div&gt;    if (Cache["Key1"] == null) &lt;/div&gt;&lt;div&gt;        Cache.Add("Key1", "Value 1", null, DateTime.Now.AddSeconds(60),TimeSpan.Zero, CacheItemPriority.High, onRemove); &lt;/div&gt;&lt;div&gt;} &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;public void RemoveItemFromCache(Object sender, EventArgs e) &lt;/div&gt;&lt;div&gt;{ &lt;/div&gt;&lt;div&gt;    if(Cache["Key1"] != null) &lt;/div&gt;&lt;div&gt;        Cache.Remove("Key1"); &lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Session:&lt;/span&gt; Its nothing but defined as a period of time shared between the web application and user. Every user has individual session. Items/Objects can be placed into the Session which would only define these object for that user. Session contains key variables which help to identify the related values. This can be thought of as a hash table. Each user would represent a different key node in the hash identifying unique values. The Session variables will be clear by the application which can clear it, as well as through the timeout property in the web config file. Usually the timeout is 20 minutes by default.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Session Variables are stored on the server, can hold any type of data including references, they are similar to global variables in a windows application and use HTTP cookies to store a key with which to locate user's session variables.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The collection of session variables is indexed by the name of the variable or by an integer index. Session variables are created by referring to the session variable by name. You do not have to declare a session variable or explicitly add it to the collection.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Lets get it cleared from following example:&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;Session[“firstName”] = “Gaurav”    //User’s first name&lt;/div&gt;&lt;div&gt;Session[“lastName”] = “Arora”        //User’s last name&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;// Clear the session variable &lt;/div&gt;&lt;div&gt;Session[“FirstName”] = null; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;//Clear all Session variables &lt;/div&gt;&lt;div&gt;Session.Abandon();  &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Note:&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;By default, ASP.NET session state is enabled for all ASP.NET applications.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;ViewState:&lt;/span&gt; Its nothing but it’s a hidden data which is kept by asp.net pages in “_VIEWSTATE” as hidden form field. They track the changes to a web site during post backs.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The ViewState of a page can be seen if you view the source code of the running page(Right Click --&gt; View Source). It will be listed under the following tags:&lt;/div&gt;&lt;div&gt;&lt;input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="””"&gt;&lt;/div&gt;&lt;div&gt;Having a large ViewState will cause a page to download slowly from the users side. When a user clicks on a button and a post back occurs, all the view state information has to be posted back to the server which causes a slower request. Most times this is insignificant, but imagine a person using a dial up connection. If requests, and page loading is taking a couple of minutes, most likely the user will get frustrated, and leave.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Note:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;By default, View State is enabled for every control in the ASP.NET Framework.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ViewState does not hold the controls, rather it holds the values of the form controls and their corresponding ID's that would otherwise be lost due to a post back because they do not post with the form.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ViewState is not used to hold session data or to transmit data between pages.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ViewState does not recreate the dynamically created controls of a page.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;It does not restore the values to the controls after a post back operation.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8505880300919355020?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8505880300919355020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/difference-between-cache-session-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8505880300919355020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8505880300919355020'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/difference-between-cache-session-and.html' title='Difference between cache, session and viewstate'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1301156859225731270</id><published>2009-01-23T16:09:00.000+05:30</published><updated>2009-01-23T16:17:02.448+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Capturing CTRL+Keys using JavaScript</title><content type='html'>This is the practical scenario where sometime one wants to disallow &lt;b&gt;Ctl+keys&lt;/b&gt; combinitions on web-pages.&lt;br /&gt;&lt;br /&gt;Following Code-snippet tells the whole story:&lt;br /&gt;&lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;script language="JavaScript"&amp;gt;&lt;br /&gt;function testCtrlKeys(e)&lt;br /&gt;{&lt;br /&gt;        //Create an array for all possible keys&lt;br /&gt;        var arrCtrlKeys = new Array('a', 'n', 'c', 'x', 'v', 'j');&lt;br /&gt;        var key;&lt;br /&gt;        var isCtrl;&lt;br /&gt;&lt;br /&gt;        if(window.event)&lt;br /&gt;        {&lt;br /&gt;                key = window.event.keyCode;     //Valid only for Internet Explorer&lt;br /&gt;                if(window.event.ctrlKey)&lt;br /&gt;                        isCtrl = true;&lt;br /&gt;                else&lt;br /&gt;                        isCtrl = false;&lt;br /&gt;        }&lt;br /&gt;       &lt;br /&gt;else&lt;br /&gt;        {&lt;br /&gt;                key = e.which;     //this is other than IE&lt;br /&gt;                if(e.ctrlKey)&lt;br /&gt;                        isCtrl = true;&lt;br /&gt;                else&lt;br /&gt;                        isCtrl = false;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        //if ctrl is pressed check if other key is in forbidenKeys array&lt;br /&gt;        if(isCtrl)&lt;br /&gt;        {&lt;br /&gt;                for(i=0; i&amp;lt;arrCtrlKeys .length; i++)&lt;br /&gt;                {&lt;br /&gt;                        //case-insensitive comparation&lt;br /&gt;                        if(arrCtrlKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())&lt;br /&gt;                        {&lt;br /&gt;                                alert('You have pressed CTRL + '&lt;br /&gt;                                        +String.fromCharCode(key)&lt;br /&gt;                                        +'.');&lt;br /&gt;&lt;br /&gt;                                return false;&lt;br /&gt;                        }&lt;br /&gt;                }&lt;br /&gt;        }&lt;br /&gt;        return true;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;form method=""&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;&amp;lt;h3&amp;gt;Test Key Combinition [Ctrl+A, Ctrl+N, Ctrl+C, Ctrl+X, Ctrl+V,Ctrl+J]&amp;lt;/h3&amp;gt;&lt;br /&gt;&amp;lt;input type="text" name="mytext" &lt;br /&gt;        onKeyPress="return testCtrlKeys(event);"&lt;br /&gt;        onKeyDown="return testCtrlKeys(event);" /&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/CODE&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note: &lt;/b&gt;&lt;br /&gt;1. Copy/paste above code in text file and save it as "nameddoc.html" and run it into Explorer&lt;br /&gt;2. Check the magic of capturing javascript keys.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1301156859225731270?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1301156859225731270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/capturing-ctrlkeys-using-javascript.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1301156859225731270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1301156859225731270'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/capturing-ctrlkeys-using-javascript.html' title='Capturing CTRL+Keys using JavaScript'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3706018556379893000</id><published>2009-01-23T16:06:00.000+05:30</published><updated>2009-01-23T16:08:49.182+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='MouseEvents'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Capturing MouseEvents Using JavaScript</title><content type='html'>&lt;h4&gt;Capturing Mouse Events Using JavaScript : &lt;/h4&gt;&lt;br /&gt;Sometime there is a need to disable &lt;b&gt;MouseEvents&lt;/b&gt; for specific task(s) in Web-Pages.&lt;br /&gt;&lt;br /&gt;The following code-snippet shows how to achieve the same : &lt;br /&gt;&lt;CODE&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;Capturing Mouse Events Using JavaScript&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;&amp;lt;b&amp;gt; Testing with Link Button : &amp;lt;/b&amp;gt; &lt;br /&gt;&amp;lt;a href="javascript:void(null)"&lt;br /&gt;   onmousedown="return captureButton(event)" onmouseup="return preventOperation(event)"&lt;br /&gt;   onclick="return preventOperation(event)" ondblclick="return preventOperation(event)"&lt;br /&gt;   oncontextmenu="return preventOperation(event)"&lt;br /&gt;&amp;gt;Click here with various mouse buttons to test&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;br/&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;&amp;lt;b&amp;gt; Testing wuth Submit Button : &amp;lt;/b&amp;gt; &lt;br /&gt;&amp;lt;input name=btnG type=submit onmousedown="return captureButton(event)" onmouseup="return preventOperation(event)"&lt;br /&gt;   onclick="return preventOperation(event)" ondblclick="return preventOperation(event)"&lt;br /&gt;   oncontextmenu="return preventOperation(event)"&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;br/&amp;gt;&lt;br /&gt;&amp;lt;div&amp;gt;&lt;br /&gt;&amp;lt;b&amp;gt; Testing with Input Text : &amp;lt;/b&amp;gt; &lt;br /&gt;&amp;lt;input name=btnG type=text onmousedown="return captureButton(event)" onmouseup="return preventOperation(event)"&lt;br /&gt;   onclick="return preventOperation(event)" ondblclick="return preventOperation(event)"&lt;br /&gt;   oncontextmenu="return preventOperation(event)"&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;script language="Javascript"&amp;gt;&lt;br /&gt;function captureButton(event)&lt;br /&gt;{&lt;br /&gt;    var button;&lt;br /&gt;    if (event.which == null)&lt;br /&gt;       button= (event.button &amp;lt; 2) ? "MOUSE BUTTON : LEFT" :&lt;br /&gt;                 ((event.button == 4) ? "MOUSE BUTTON : MIDDLE" : "MOUSE BUTTON : RIGHT");&lt;br /&gt;    else&lt;br /&gt;       button= (event.which &amp;lt; 2) ? "MOUSE BUTTON : LEFT" :&lt;br /&gt;                 ((event.which == 2) ? "MOUSE BUTTON : MIDDLE" : "MOUSE BUTTON : RIGHT");&lt;br /&gt;    alert(button);&lt;br /&gt;    preventOperation(event);&lt;br /&gt;}&lt;br /&gt;function preventOperation(event)&lt;br /&gt;{&lt;br /&gt;    if (event.preventDefault)&lt;br /&gt;        event.preventDefault();&lt;br /&gt;    else&lt;br /&gt;        event.returnValue= false;&lt;br /&gt;     return false;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/CODE&gt;&lt;br /&gt;&lt;br /&gt;Copy paste above code in a text document and named it as &lt;b&gt;MouseEvents.html&lt;/b&gt;&lt;br /&gt;Now test the same.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3706018556379893000?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3706018556379893000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/capturing-mouseevents-using-javascript.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3706018556379893000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3706018556379893000'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/capturing-mouseevents-using-javascript.html' title='Capturing MouseEvents Using JavaScript'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8141353217326520970</id><published>2009-01-23T16:04:00.000+05:30</published><updated>2009-01-23T16:06:45.998+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Get MicroSoft SDK's under single roof</title><content type='html'>Now &lt;b&gt;MicroSoft&lt;/b&gt; SDK's are available in a single page.&lt;br /&gt;&lt;br /&gt;One can get download required SDK's from the page &lt;a href="http://msdn.microsoft.com/en-us/dd299405.aspx"&gt;MicroSOft SDK's&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The are under heads : &lt;br /&gt;&lt;br /&gt;1. Azure Services Platrform&lt;br /&gt;2. Office&lt;br /&gt;3. Windows Desktop&lt;br /&gt;4. Devices&lt;br /&gt;5. Games&lt;br /&gt;6. Server Technologies&lt;br /&gt;7. Others&lt;br /&gt;&lt;br /&gt;If need any kind of assistant, please fell free to contact me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8141353217326520970?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8141353217326520970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/get-microsoft-sdks-under-single-roof.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8141353217326520970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8141353217326520970'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/get-microsoft-sdks-under-single-roof.html' title='Get MicroSoft SDK&apos;s under single roof'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1387973940125640693</id><published>2009-01-15T01:49:00.000+05:30</published><updated>2009-01-15T01:51:12.577+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MCTS'/><category scheme='http://www.blogger.com/atom/ns#' term='Welcome Kit'/><category scheme='http://www.blogger.com/atom/ns#' term='Personal'/><category scheme='http://www.blogger.com/atom/ns#' term='MCP'/><title type='text'>MCP/MCTS : Welcome Kit</title><content type='html'>Today I have got my Welcome kit for MCTS. I have successfully achieved the same with 96.4% marks.&lt;br /&gt;&lt;br /&gt;I got this news from my wife Shuby Arora.&lt;br /&gt;&lt;br /&gt;Want to share my joy with all of you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1387973940125640693?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1387973940125640693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/mcpmcts-welcome-kit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1387973940125640693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1387973940125640693'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/mcpmcts-welcome-kit.html' title='MCP/MCTS : Welcome Kit'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5843724169490299524</id><published>2009-01-01T23:48:00.000+05:30</published><updated>2009-01-01T23:53:34.931+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Partial Class'/><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='CLR PROC'/><title type='text'>Writing CLR Stored Proc : Using Visual Studio</title><content type='html'>&lt;h1&gt;Overview &amp;amp; History&lt;/h1&gt;&lt;br /&gt;First of all let me say my thanks to&lt;br /&gt;&lt;a href="http://www.dotnetspider.com/sites/55/CommunityMemberDetails.aspx?MembershipId=788"&gt; Mr. Joymon&lt;/a&gt; whose question inspired me to write this resource.&lt;br /&gt;&lt;br /&gt;The present post is showing the another method to &lt;b&gt;Write a CLR Proc&lt;/b&gt; apart from the method in my earlier post &lt;br /&gt;&lt;a href="http://www.dotnetspider.com/sites/55/Forum-226-Writting-CLR-Stored-Proc.aspx"&gt; Writting a CLR Stored Proc&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step:Followings are the steps to start the above in Visual Studion&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;1. Start Visual Studio2005 or higher&lt;br /&gt;2. Add new file from File -&amp;gt; New -&amp;gt; Project&lt;br /&gt;3. Select Database Project [provide the name]&lt;br /&gt;4. Create the project, it requires Database Reference [I used EmployeeDB here]&lt;br /&gt;5. In Solution Explorer Right Click on the project name and Click Add&lt;br /&gt;6. Select Stored Procedure&lt;br /&gt;7. Add new File with name 'myTestStoredProcedure.cs'&lt;br /&gt;8. The added file will look like :&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Data.SqlClient;&lt;br /&gt;using System.Data.SqlTypes;&lt;br /&gt;using Microsoft.SqlServer.Server;&lt;br /&gt;&lt;br /&gt;public partial class StoredProcedures&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;    [Microsoft.SqlServer.Server.SqlProcedure]&lt;br /&gt;    public static void myTestStoredProcedure()&lt;br /&gt;    {&lt;br /&gt;        //Right some code here&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I am writing a code for following three Stored Proc:&lt;br /&gt;&lt;br /&gt;1. myTestStoredProcedure - Simply prints a message&lt;br /&gt;2. spGetRolesList - Display the rows from table&lt;br /&gt;3. spGetEmployeeList - Display the rows from table for specific Age group.&lt;br /&gt;&lt;br /&gt;The following code tells how to create a CLR stored proc with the use of Visual Studio:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;/************************************************&lt;br /&gt; * Topic        : How to Create CLR Proc using VS&lt;br /&gt; * Author       : Gaurav Arora&lt;br /&gt; * Reference    : A Step Ahead Series - SQL2005 &lt;br /&gt; * Visit        : http://msdotnetheaven.com  &lt;br /&gt; * **********************************************/&lt;br /&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Data.SqlClient;&lt;br /&gt;using System.Data.SqlTypes;&lt;br /&gt;using Microsoft.SqlServer.Server;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public partial class StoredProcedures&lt;br /&gt;{&lt;br /&gt;    /// &lt;br /&gt;    /// Prints a Message&lt;br /&gt;    /// &lt;br /&gt;&lt;br /&gt;    [Microsoft.SqlServer.Server.SqlProcedure]&lt;br /&gt;    public static void myTestStoredProcedure()&lt;br /&gt;    {&lt;br /&gt;        //Simple proc&lt;br /&gt;        SqlPipe objSqlPipe = SqlContext.Pipe;&lt;br /&gt;        objSqlPipe.Send("Hi! I am simple CLR PROC");&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Proc to Show Rows of [EmployeeDB]..[Roles] table&lt;br /&gt;    /// &lt;br /&gt;&lt;br /&gt;    [Microsoft.SqlServer.Server.SqlProcedure]&lt;br /&gt;    public static void spGetRolesList()&lt;br /&gt;    {&lt;br /&gt;        //It returns rows from Roles table&lt;br /&gt;        SqlConnection conn = new SqlConnection();&lt;br /&gt;        conn.ConnectionString = "Context Connection=true";&lt;br /&gt;&lt;br /&gt;        SqlCommand cmd = new SqlCommand();&lt;br /&gt;        cmd.Connection = conn;&lt;br /&gt;        cmd.CommandText = @"Select * from [dbo].[Roles] Order By HireDate";&lt;br /&gt;        conn.Open();&lt;br /&gt;&lt;br /&gt;        SqlDataReader sqldr = cmd.ExecuteReader();&lt;br /&gt;        SqlContext.Pipe.Send(sqldr);&lt;br /&gt;&lt;br /&gt;        sqldr.Close();&lt;br /&gt;        conn.Close();&lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// It shows rows from Employee table on basis of supplied age&lt;br /&gt;    /// &lt;br /&gt;    /// a specified age&lt;br /&gt;    [Microsoft.SqlServer.Server.SqlProcedure]&lt;br /&gt;    public static void spGetEmployeeList(Int32 intAge)&lt;br /&gt;    {&lt;br /&gt;              &lt;br /&gt;         //It returns rows from Employee table on basis of supplied age&lt;br /&gt;         SqlConnection conn = new SqlConnection();&lt;br /&gt;         conn.ConnectionString = "Context Connection=true";     &lt;br /&gt;       &lt;br /&gt;&lt;br /&gt;         SqlCommand cmd = new SqlCommand();&lt;br /&gt;         cmd.Connection = conn;&lt;br /&gt;         conn.Open();&lt;br /&gt;         cmd.CommandText = "Select * from [dbo].[Employees] Where Age &amp;gt;=@intAge Order By Age";&lt;br /&gt;        &lt;br /&gt;         SqlParameter paramAge = new SqlParameter();&lt;br /&gt;         paramAge.Value = intAge;&lt;br /&gt;         paramAge.Direction = ParameterDirection.Input;&lt;br /&gt;         paramAge.DbType = DbType.Int32;&lt;br /&gt;         paramAge.ParameterName = "@intAge";&lt;br /&gt;&lt;br /&gt;         cmd.Parameters.Add(paramAge);&lt;br /&gt;         &lt;br /&gt;         SqlDataReader sqldr = cmd.ExecuteReader();&lt;br /&gt;         SqlContext.Pipe.Send(sqldr);&lt;br /&gt;&lt;br /&gt;         sqldr.Close();&lt;br /&gt;         conn.Close();         &lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;};&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Build and Deploy the assembly : &lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;1. Press ctrl+shift+B or Select Build option Under Build&lt;br /&gt;2. If project successfully Build, now its time to deploy the assembly in SQLServer Directory.&lt;br /&gt;3. Right click on Project name in SOlution Explorer&lt;br /&gt;4. Click on Deploy.&lt;br /&gt;5. Check the Status Bar for further.&lt;br /&gt;6. If It deployed successfully, you can check the CLR proc from Server Explorer&lt;br /&gt;7. Expand EmployeeDB node.&lt;br /&gt;8. Expand Assemblynode [ you can find 'AStepAheadProcVisual' CLR Assembly]&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Executing CLR Stored Proc :&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Using Server Explorer of VS&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;1. Expand the AStepAheadProcVisual node&lt;br /&gt;2. Here you can see a class file and Assembly.info file including three procs.&lt;br /&gt;3. Right click on anyone Stored Proc [option availale :Open, Execute, Step Into Stored Procedure ].&lt;br /&gt;   (a) Open : Directs to a specific proc.&lt;br /&gt;   (b) Execute : Executes the selected proc and result is available in OutPut window.&lt;br /&gt;   (c) Step Into Stored Procedure : It debugs the application following selected proc.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;Using SQLServer Management Studio&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;1. Open your SQLServer Management Studio[if not opened earlier]&lt;br /&gt;2. Type following code in Query Window&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;Use [EmployeeDB]&lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;DECLARE @Role int&lt;br /&gt;SET @Role = 28&lt;br /&gt;Exec [dbo].[spGetEmployeeList] @Role           &lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;3. The above code will display the EmployeeList with Employees having age 28Yrs or more.&lt;br /&gt;4. In same manner execute other procs&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;Use [EmployeeDB]&lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;Exec [dbo].[myTestStoredProcedure]&lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;Exec [dbo].[spGetRolesList]&lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;DECLARE @Role int&lt;br /&gt;SET @Role = 28&lt;br /&gt;Exec [dbo].[spGetEmployeeList] @Role           &lt;br /&gt;Go&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Scripts of Databases:&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Followings are the scripts of Table(s) used in given example:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;USE [master]&lt;br /&gt;GO&lt;br /&gt;/****** Object:  Database [EmployeeDB]    Script Date: 01/01/2009 23:04:12 ******/&lt;br /&gt;IF NOT EXISTS (SELECT name FROM sys.databases WHERE name = N'EmployeeDB')&lt;br /&gt;BEGIN&lt;br /&gt; DROP DATABASE [EmployeeDB]&lt;br /&gt; CREATE DATABASE [EmployeeDB]&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;USE [EmployeeDB]&lt;br /&gt;GO&lt;br /&gt;/****** Object:  Table [dbo].[employees]    Script Date: 01/01/2009 23:05:24 ******/&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[employees]') AND type in (N'U'))&lt;br /&gt;BEGIN&lt;br /&gt; DROP TABLE [dbo].[employees] &lt;br /&gt;&lt;br /&gt; CREATE TABLE [dbo].[employees](&lt;br /&gt;  [id] [nvarchar](4) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,&lt;br /&gt;  [firstname] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT ('First Name'),&lt;br /&gt;  [lastname] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT ('Last Name'),&lt;br /&gt;  [age] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL DEFAULT ('19'),&lt;br /&gt; PRIMARY KEY CLUSTERED &lt;br /&gt; (&lt;br /&gt;  [id] ASC&lt;br /&gt; )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]&lt;br /&gt; ) ON [PRIMARY]&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Roles]') AND type in (N'U'))&lt;br /&gt;BEGIN&lt;br /&gt; DROP TABLE [dbo].[Roles]&lt;br /&gt; CREATE TABLE [dbo].[Roles](&lt;br /&gt;  [Id] [int] IDENTITY(1,1) NOT NULL,&lt;br /&gt;  [Role] [nvarchar](300) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,&lt;br /&gt;  [IsRetiree] [bit] NOT NULL,&lt;br /&gt;  [HireDate] [datetime] NOT NULL,&lt;br /&gt;  CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED &lt;br /&gt; (&lt;br /&gt;  [Id] ASC&lt;br /&gt; )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]&lt;br /&gt; ) ON [PRIMARY]&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;IMPORTANT NOTE:&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;1. If get error : &lt;b&gt;Execution of user code in the .NET Framework is disabled. Enable "clr enabled" configuration option.&lt;br /&gt;&lt;/b&gt;, While executing the above using SQLSERVER2005/2008, run following code in Query analyzer:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;sp_configure 'clr enabled', 1&lt;br /&gt;go&lt;br /&gt;reconfigure&lt;br /&gt;go&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;2. You can also Debug the Produced code within VS: by starting Debugging from DEBUG MENU&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="green"&gt;Hope the represented article is worthful for you.&lt;/font&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5843724169490299524?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5843724169490299524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/writing-clr-stored-proc-using-visual.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5843724169490299524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5843724169490299524'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2009/01/writing-clr-stored-proc-using-visual.html' title='Writing CLR Stored Proc : Using Visual Studio'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-9213090891286807251</id><published>2008-12-22T20:35:00.000+05:30</published><updated>2008-12-22T20:38:45.865+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MicroSoft in OpenSource : PHP'/><title type='text'>MicroSoft in OpenSource : PHP</title><content type='html'>&lt;strong&gt;&lt;span style="color:#3366ff;"&gt;As the technologies grow, Microsoft is also lightning it.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Open-source initiatives at Microsoft are important to the open-source community because they give developers greater exposure for their products through access to a broadly adopted platform….The (open-source development and interoperability) initiatives are important because they break down barriers between proprietary and open-source developers allowing them to benefit from each other’s work.&lt;br /&gt;&lt;br /&gt;Take a round to &lt;a style="outline-color: initial; outline-style: none; outline-width: initial" href="http://www.phpclasses.org/blog/post/85-What-is-Microsoft-up-to-with-PHP.html"&gt;an interview with the PHP Classes blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Microsoft engineers and contractors have made contributions to the PHP run-time engine and to PHP application projects. And communication between Microsoft; commercial open-source-based companies including Zend, OmniTI, and iBuildings; and open-source developers has broadened significantly.&lt;br /&gt;&lt;br /&gt;In other words, both the PHP community and Microsoft benefit from this interoperability development.&lt;br /&gt;For more info: http://news.cnet.com/8301-13505_3-10126079-16.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-9213090891286807251?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/9213090891286807251/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/microsoft-in-opensource-php.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9213090891286807251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9213090891286807251'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/microsoft-in-opensource-php.html' title='MicroSoft in OpenSource : PHP'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4755782857867761500</id><published>2008-12-22T20:32:00.000+05:30</published><updated>2008-12-22T20:34:54.495+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open-Source Blog : Launched by MicroSoft'/><title type='text'>Open-Source Blog : Launched by MicroSoft</title><content type='html'>&lt;strong&gt;&lt;span style="color:#3366ff;"&gt;MicroSoft launched an Open-Source blogging platform&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;However, the software maker was quick to underline that the product is aimed at developers and not intended to directly compete with popular blogging software such as WordPress or Movable Type.&lt;br /&gt;The same has been available at : &lt;a href="http://visitmix.com/lab/oxite"&gt;oxite&lt;/a&gt;&lt;br /&gt;One need MicroSoft Public licence from &lt;a href="http://www.opensource.org/licenses/ms-pl.html"&gt;Open-Source License&lt;/a&gt;.&lt;br /&gt;Read about first public release at : http://www.codeplex.com/oxite/Release/ProjectReleases.aspx?ReleaseId=20210&lt;br /&gt;Oxite is a standards-compliant, extensible content-management system designed to support either blogs or larger Web sites, Microsoft said. The platform includes support for features such as pingbacks, trackbacks, anonymous or authenticated commenting, gravatars (globally recognized avatars), and RSS feeds at any page level, the company said.&lt;br /&gt;For more details: http://news.cnet.com/8301-1001_3-10119017-92.html?subj=news&amp;amp;tag=2547-1_3-0-20&amp;amp;part=sphere&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4755782857867761500?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4755782857867761500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/open-source-blog-launched-by-microsoft.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4755782857867761500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4755782857867761500'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/open-source-blog-launched-by-microsoft.html' title='Open-Source Blog : Launched by MicroSoft'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4432941579120551345</id><published>2008-12-14T22:11:00.000+05:30</published><updated>2008-12-14T22:13:00.642+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ErrorPage'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><title type='text'>Redirect to Error Page Using JavaScript</title><content type='html'>My readers enquired that how to rehuffle the yellow page on web.&lt;br /&gt;The Yellow page appears when Web-Site got any runtime error.&lt;br /&gt;&lt;br /&gt;I always suggested to supercede the Yellow-Page. Try the following code :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;namespace AStepAhead.redirectErrorPage&lt;br /&gt;{&lt;br /&gt;public class redirectErrorPage&lt;br /&gt;{&lt;br /&gt;public redirectErrorPage()&lt;br /&gt;{&lt;br /&gt;String strDomainName = “MsDotnetHeaven.com”;&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;//Write you coding here&lt;br /&gt;}&lt;br /&gt;catch (Exception ex)&lt;br /&gt;{&lt;br /&gt;SystemFramework.ApplicationLog.WriteError(”Error : ” + ex.ToString());&lt;br /&gt;//Redircet you main page to error page&lt;br /&gt;Response.Write(”&lt;SCRIPT LANGUAGE=\”JavaScript\” type=\”text/javascript\”&gt;\n”);&lt;br /&gt;Response.Write(”if (window.opener != null) {\n”);&lt;br /&gt;Response.Write(”window.opener.location.href = ‘” + “https://” + strDomainName + “/errorpage.aspx?Error=” + Server.UrlEncode(ex.ToString()) + “‘;\n”);&lt;br /&gt;Response.Write(”window.close();\n”);&lt;br /&gt;Response.Write(”} else { \n”);&lt;br /&gt;Response.Write(”window.location.href = ‘” + “https://” + strDomainName + “/errorpage.aspx?Error=” + Server.UrlEncode(ex.ToString()) + “‘;\n”);&lt;br /&gt;Response.Write(”} \n”);&lt;br /&gt;Response.Write(”&lt;/SCRIPT&gt;\n”);&lt;br /&gt;Response.End();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now, in error page, read ErrorString and show to the users.&lt;br /&gt;&lt;br /&gt;Step(s): Followings are the steps to perform above:&lt;br /&gt;&lt;br /&gt;1. Create an Error Page and named it as errorpage.aspx.&lt;br /&gt;2. Read Error string at Page_load&lt;br /&gt;3. Write above code in your Web Page.&lt;br /&gt;&lt;br /&gt;After above, whenever any runtime exception occured, your user will see a maintained / designed error page.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4432941579120551345?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4432941579120551345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/redirect-to-error-page-using-javascript.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4432941579120551345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4432941579120551345'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/12/redirect-to-error-page-using-javascript.html' title='Redirect to Error Page Using JavaScript'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3140079957912503222</id><published>2008-11-30T21:34:00.000+05:30</published><updated>2008-11-30T21:39:22.899+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='clr'/><category scheme='http://www.blogger.com/atom/ns#' term='SqlServer'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><title type='text'>Writting a CLR Stored Proc</title><content type='html'>With the launch of &lt;b&gt;SqlServer2005&lt;/b&gt;, we got the ability to write &lt;abbr title="Common Language RunTime"&gt; CLR&lt;/abbr&gt; from any .Net language.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Overview:&lt;/h4&gt;&lt;br /&gt;The following code-snippet tells how to write a simple &lt;b&gt;CLR Stored Proc &lt;/b&gt; with the use &lt;br /&gt;&lt;br /&gt;of &lt;b&gt;C#&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Step:&lt;/h5&gt;&lt;br /&gt;1. Start Visual Studio2005 or higher&lt;br /&gt;2. Add new file from File -&gt; New -&gt; File&lt;br /&gt;3. Select Class with C#&lt;br /&gt;4. Mark the name as &lt;b&gt;AStepAheadProc.cs&lt;/b&gt;&lt;br /&gt;5. Write the following lines: &lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;/* This Example is a part of different &lt;br /&gt; * examples shown in Book: &lt;br /&gt; * C#2008 Beginners: A Step Ahead&lt;br /&gt; * Written by: Gaurav Arora &lt;br /&gt; * Reach at : &lt;a href=msdotnetheaven.com&gt;Gaurav Arora&lt;/a&gt; */&lt;br /&gt;&lt;br /&gt;using System.Data.SqlServer;&lt;br /&gt;using System.Data.SqlTypes;&lt;br /&gt;&lt;br /&gt;public class AStepAheadProc&lt;br /&gt;{&lt;br /&gt;    public static void FirstProcProc()&lt;br /&gt;    {&lt;br /&gt;        //Client output buffer&lt;br /&gt;&lt;br /&gt;        SqlPipe sqlPipe = SqlContext.GetPipe();&lt;br /&gt;&lt;br /&gt;        //send the output&lt;br /&gt;&lt;br /&gt;        sqlPipe.Send("This is demo Store Proc Assembly");&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Explanation : &lt;/h5&gt;&lt;br /&gt;The &lt;b&gt;sqlContext&lt;/b&gt; provides &lt;b&gt;The GetPipe()&lt;/b&gt; method returns a SqlPipe that we can use &lt;br /&gt;to send results back to the client.&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Steps of Use/Working &lt;/h5&gt;&lt;br /&gt;1. Compile the above code into assembly&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;csc /target:library c:\AStepAheadProc.cs /r:"D:\Program Files\Microsoft SQL Server\&lt;br /&gt;MSSQL.1\MSSQL\Binn\sqlaccess.dll"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;2. Load the created assembly in SQL with the use of &lt;b&gt;CREATE PROCEDURE&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;create procedure AStepAheadProc&lt;br /&gt;as external name AStepAheadProc.AStepAheadProc.FirstProcProc&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;3. Execute the Created stored procedure in Query Analyzer&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;exec AStepAheadProc&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Note:&lt;/h5&gt;&lt;br /&gt;The above code-snippet is just describe how to create a CLT Stored Proc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3140079957912503222?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3140079957912503222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/writting-clr-stored-proc.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3140079957912503222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3140079957912503222'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/writting-clr-stored-proc.html' title='Writting a CLR Stored Proc'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8054594559043342182</id><published>2008-11-27T19:25:00.000+05:30</published><updated>2008-11-27T19:58:18.449+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>Get Client System's Drive List : JavaScript</title><content type='html'>The following code tells how to get client systems Drive List.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;HTML&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;HEAD&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;SCRIPT language=JavaScript&amp;gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;    //Following function returns the drive list from client system&lt;br /&gt;&lt;br /&gt;    function getClientDrives() {&lt;br /&gt;&lt;br /&gt;        var objfs, s, n, e, x;&lt;br /&gt;&lt;br /&gt;        objfs = new ActiveXObject("Scripting.FileSystemObject");&lt;br /&gt;&lt;br /&gt;        e = new Enumerator(objfs.Drives);&lt;br /&gt;&lt;br /&gt;        s = "";&lt;br /&gt;&lt;br /&gt;        do {&lt;br /&gt;&lt;br /&gt;            x = e.item();&lt;br /&gt;&lt;br /&gt;            s = s + x.DriveLetter;&lt;br /&gt;&lt;br /&gt;            s += ":    ";&lt;br /&gt;&lt;br /&gt;            if (x.DriveType == 3) n = x.ShareName;&lt;br /&gt;&lt;br /&gt;            else if (x.IsReady) n = x.VolumeName;            &lt;br /&gt;&lt;br /&gt;            else n = "&amp;lt;font color=red&amp;gt;[Other Drive-not intialized]&amp;lt;/font&amp;gt;";&lt;br /&gt;&lt;br /&gt;            s += n + "&amp;lt;br&amp;gt;";&lt;br /&gt;&lt;br /&gt;            e.moveNext();&lt;br /&gt;&lt;br /&gt;        } while (!e.atEnd());&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        return (s);&lt;br /&gt;&lt;br /&gt;    }    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/HEAD&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;BODY&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;P&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;h1&amp;gt;The following is the list of available drives on Client system:&amp;lt;/h1&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;SCRIPT language=JavaScript&amp;gt;    document.write(getClientDrives());&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/P&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/BODY&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/HTML&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8054594559043342182?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8054594559043342182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/get-client-systems-drive-list.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8054594559043342182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8054594559043342182'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/get-client-systems-drive-list.html' title='Get Client System&apos;s Drive List : JavaScript'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-9209863582210501915</id><published>2008-11-23T17:00:00.000+05:30</published><updated>2008-11-23T17:18:18.474+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>ref - out : at a glance</title><content type='html'>&lt;h1&gt;The ref &lt;/h1&gt;&lt;br /&gt;The &lt;b&gt;ref &lt;/b&gt; keyword causes argument passed by reference. The effect is that any chnages is made to the parameter in the method will be reflected in that variable when control passes back to the calling method. To use a &lt;b&gt;ref&lt;/b&gt; parameter, both the method definition and the calling method must explicitly use the &lt;b&gt;ref &lt;/b&gt; keyword.&lt;br /&gt;&lt;br /&gt;An argument passed to to a ref parameter must first be initialized. his differs it from &lt;b&gt;out &lt;/b&gt; whose argument need not be explicitly initialize before being passed.&lt;br /&gt;&lt;br /&gt;Both &lt;b&gt;ref and out&lt;/b&gt; are treated differently at runtime, but treated the same at compilation. Therefore, methods can't be overloaded if one method takes a &lt;b&gt;ref&lt;/b&gt; keyword and the other takes an &lt;b&gt;out&lt;/b&gt; argument.&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;&lt;b&gt;Exaple:&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt; class refpara&lt;br /&gt;        {&lt;br /&gt;            static void refMath(ref String STR)&lt;br /&gt;            {&lt;br /&gt;                STR  = "Hi!";&lt;br /&gt;            }&lt;br /&gt;            static void Main()&lt;br /&gt;            {&lt;br /&gt;                String str = "Hello!";&lt;br /&gt;                refMath(ref str);&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;The out &lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;out&lt;/b&gt; keyword also causes argument to be passed by reference. There no need to initialize the &lt;b&gt;out &lt;/b&gt; variable as it requires in case of &lt;b&gt;ref&lt;/b&gt; variable.&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;&lt;b&gt;Exaple:&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt; class refpara&lt;br /&gt;        {&lt;br /&gt;            static void refMath(out String STR)&lt;br /&gt;            {&lt;br /&gt;                STR  = "Hi!";&lt;br /&gt;            }&lt;br /&gt;            static void Main()&lt;br /&gt;            {&lt;br /&gt;                String str = "Hello!";&lt;br /&gt;                refMath(out str);&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-9209863582210501915?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/9209863582210501915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/ref-out-at-glance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9209863582210501915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/9209863582210501915'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/ref-out-at-glance.html' title='ref - out : at a glance'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-2726929403802142896</id><published>2008-11-16T20:58:00.000+05:30</published><updated>2008-11-16T21:10:09.578+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><title type='text'>ASP.NET MVC – A Step Ahead Series: Part-II</title><content type='html'>&lt;h1&gt;ASP.NET MVC – A Step Ahead Series: Part-II&lt;/h1&gt;&lt;br /&gt;This article is only for learning purpose and to enhance the &lt;b&gt;ASP.Net MVC&lt;/b&gt; skills. The &lt;b&gt;A Step Ahead Series &lt;/b&gt; containing few chapters to describe the same.&lt;br /&gt;&lt;h2&gt;History&lt;/h2&gt;&lt;br /&gt;In Part-I we have learnt few basics of the &lt;b&gt;ASP.Net MVC&lt;/b&gt;, including features and containing the creation of a sample application. In this entire tutorial we will continue the same application with other concepts.&lt;br /&gt;&lt;h2&gt;Introduction&lt;/h2&gt;&lt;br /&gt;This part of tutorial expands the previously created project. Let’s remind the last tutorial in following steps:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt; The MVC pattern separates the components of an MVC web application, which allows the more controls of the individual parts of that application.&lt;/li&gt;&lt;br /&gt;&lt;li&gt; MVC pattern separates objects into Model, View and Controllers&lt;/li&gt;&lt;br /&gt;&lt;li&gt; The MVC pattern helps you create applications that separate the different aspects of the application (input logic, business logic, and UI logic), while providing a loose coupling between these elements. The pattern specifies where each kind of logic should be located in the application. The UI logic belongs in the view. Input logic belongs in the controller. Business logic belongs in the model. This separation helps you manage complexity when you build an application, because it enables you to focus on one aspect of the implementation at a time. For example, you can focus on the view without depending on the business logic. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Steps to create an ASP.Net MVC application :&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Start your Visual Studio2008 : Start -&gt;Programs -&gt; Visual Studio2008&lt;/li&gt;&lt;br /&gt;&lt;li&gt;On the &lt;b&gt;File&lt;/b&gt; menu, click &lt;b&gt;New Project&lt;/b&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the upper-right corner, make sure that &lt;b&gt;.NET Framework 3.5&lt;/b&gt; is selected.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Under &lt;b&gt;Project types&lt;/b&gt;, expand either &lt;b&gt;Visual Basic&lt;/b&gt; or &lt;b&gt;Visual C#&lt;/b&gt;, and then click &lt;b&gt;Web &lt;/b&gt;[&lt;i&gt;I have opted C#&lt;/i&gt;]&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Under &lt;b&gt;Visual Studio installed templates&lt;/b&gt;, select &lt;b&gt;ASP.NET MVC Web Application&lt;/b&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the &lt;b&gt;Name&lt;/b&gt; box, enter &lt;i&gt;MVCApplicationStepAhead&lt;/i&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the &lt;b&gt;Location&lt;/b&gt; box, enter a name for the project folder.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If you want the name of the solution to differ from the project name, enter a name for the solution in the &lt;b&gt;Solution Name&lt;/b&gt; box.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Select &lt;b&gt;Create directory for solution&lt;/b&gt; and click &lt;b&gt;OK&lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt; &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;h2&gt; MVCApplicationStepAhead – At a glance &lt;/h2&gt;&lt;br /&gt;The folder structure of an MVC project differs from that of an ASP.NET Web site project. The MVC project contains the following folders:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Content Folder : &lt;/font&gt; This folder contains the style sheets. Basically this folder having responsible files for page layout, design etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Controller Folder : &lt;/font&gt; As ot pronounced from name this folder contains the controller files like &lt;i&gt;AccountController.cs&lt;/i&gt; and &lt;i&gt;HomeController.cs&lt;/i&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Models Folder : &lt;/font&gt; Contains Data Model files.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Script Folder : &lt;/font&gt; Contains Script files.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;View Folder : &lt;/font&gt; For view page files. This folder contains three subfolders: Account, Home, and Shared. The Account folder contains views that are used as UI for logging in and changing passwords. The Home folder contains an Index view (the default starting page for the application) and an About page view. The Shared folder contains the master page view for the application. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Creating the Routes &lt;/h3&gt;&lt;br /&gt;One of the powerful new features that ASP.NET MVC brings to the table is the ability to customize the URLs that access your application. The URL routing feature explicitly breaks the connection between physical files on disk and the URL that is used to access a given bit of functionality.   This is important for Search Engine Optimization as well as general usability of the website. &lt;br /&gt;This is done by creating a route table in the global.asax file in the MVC Application.   Luckily for us, the defaults included in the template work perfectly this application. &lt;br /&gt;&lt;br /&gt;Finally, we are ready to start creating application:&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Scope : &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;Scope of our Test application is &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Creation of an Interface for employees to: &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Defining their roles&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Getting Roles&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Checking the availability of an Employee [whether retiree or not]&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Requirement : &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;We need for above &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;A Storage where we put records – The &lt;b&gt;Model&lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;An Interface where user can interact – The &lt;b&gt;Viewer&lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A media through which all activities could be inspected – The &lt;b&gt;Controller&lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Selecting Application : &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;We have assigned tasks for .Net and we need MVC, so, the best selection of language is &lt;b&gt;ASP.NET MVC&lt;/b&gt;.&lt;br /&gt;Now, let’s start creating above one-by-one [I assume that there is no predefined file exists]:&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Creation of Model &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;First o f all as have discussed we want a Container where we store our data. Here What I mean of &lt;b&gt;Container &lt;/b&gt;, ofcourse, a Database.&lt;br /&gt;Here are three options for you to choose container of this application:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Go with the existing database file &lt;b&gt;EmployeeDB.mdf&lt;/b&gt; under &lt;b&gt; App_data&lt;/b&gt; folder of application.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Use the available script &lt;b&gt;EmployeeDB.sql&lt;/b&gt; available under &lt;b&gt; App_data&lt;/b&gt; folder of application  to create above database&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Finally, follow bellow mentioned steps to create a new database from / within the environment : &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Select &lt;b&gt; App_data&lt;/b&gt; folder Choose New From File -&gt; New -&gt; File option , or &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Right Click the  &lt;b&gt; App_data&lt;/b&gt;  to add new database file.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Create a Database with name &lt;b&gt;EmployeeDB&lt;/b&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Create a Table &lt;b&gt;ERoles&lt;/b&gt; following is the query for this : &lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;/*******************************************&lt;br /&gt;*This script creates &lt;br /&gt;****** database EmployeeDB&lt;br /&gt;****** Table Roles&lt;br /&gt;********************************************/&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT name FROM sys.databases WHERE name = N'EmployeeDB')&lt;br /&gt;DROP DATABASE [EmployeeDB]&lt;br /&gt;Go&lt;br /&gt;CREATE DATABASE [EmployeeDB]&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;USE [EmployeeDB]&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Roles]') AND type in (N'U'))&lt;br /&gt;DROP TABLE [dbo].[Roles]&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;/********************************************************************&lt;br /&gt;******This script is a part of ASP.NET MVC-A Step Ahead Series&lt;br /&gt;****** Written by : Gaurav Arora&lt;br /&gt;****** Reach author at : webmaster@msdotnetheaven.com&lt;br /&gt;****** Anyone can use this for educational purposes.&lt;br /&gt;**********************************************************************/&lt;br /&gt;&lt;br /&gt;SET ANSI_NULLS ON&lt;br /&gt;GO&lt;br /&gt;SET QUOTED_IDENTIFIER ON&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;CREATE TABLE [dbo].[Roles](&lt;br /&gt; [Id] [int] IDENTITY(1,1) NOT NULL,&lt;br /&gt; [Role] [nvarchar](300) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,&lt;br /&gt; [IsRetiree] [bit] NOT NULL,&lt;br /&gt; [HireDate] [datetime] NOT NULL,&lt;br /&gt; CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED &lt;br /&gt;(&lt;br /&gt; [Id] ASC&lt;br /&gt;)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]&lt;br /&gt;) ON [PRIMARY]&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;SET ANSI_NULLS OFF&lt;br /&gt;GO&lt;br /&gt;SET QUOTED_IDENTIFIER OFF&lt;br /&gt;GO&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Fill some initial values into new created table either from Environment or Query analyzer : &lt;/li&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;USE [EmployeeDB]&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;INSERT INTO [dbo].[Roles]([Role],[IsRetiree],[HireDate])&lt;br /&gt;VALUES('Manager - Resource',0,'01/01/2005')&lt;br /&gt;GO&lt;br /&gt;INSERT INTO [dbo].[Roles]([Role],[IsRetiree],[HireDate])&lt;br /&gt;VALUES('Manager - Technical',0,'01/11/1999')&lt;br /&gt;GO&lt;br /&gt;INSERT INTO [dbo].[Roles]([Role],[IsRetiree],[HireDate])&lt;br /&gt;VALUES('Member - Technical Staff',0,'01/11/2007')&lt;br /&gt;GO&lt;br /&gt;INSERT INTO [dbo].[Roles]([Role],[IsRetiree],[HireDate])&lt;br /&gt;VALUES('Sr. Member - Technical Staff',0,'11/11/2007')&lt;br /&gt;GO&lt;br /&gt;INSERT INTO [dbo].[Roles]([Role],[IsRetiree],[HireDate])&lt;br /&gt;VALUES('Lead Member - Technical Staff',1,'11/11/1986')&lt;br /&gt;GO&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Alternatively, you can also used available stored procedures. I am not discussing about Stored Procedure here.&lt;br /&gt;Finally, you have a database with table.&lt;br /&gt;&lt;b&gt;Note: &lt;/b&gt; You can change the name of above objects as per your feasibility. &lt;br /&gt;With the invention of  &lt;abbr title="Language-Integrated Query"&gt; LINQ&lt;/abbr&gt;, its very easy to solve the smut problems in applications. Here to defining a &lt;b&gt;Model&lt;/b&gt;.&lt;br /&gt;There are many tools to generate this task like :&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt; &lt;a href=http://msdn.microsoft.com/en-us/library/bb386976.aspx&gt; LINQ To SQL&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=http://www.hibernate.org/&gt;nHibernet&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=http://msdn.microsoft.com/en-us/library/bb399572.aspx&gt;Entity Framework&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;I prefer to use LINQ to SQL, although above three are likely to be same but I always use &lt;b&gt; LINQ to SQL. &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To do the same :&lt;br /&gt;&lt;br /&gt;Right click on &lt;b&gt;Models &lt;/b&gt; folder and select Add New Item -&gt; LINQ To SQL -&gt; EmpRole.dbml&lt;br /&gt;&lt;br /&gt;Now, just pick and drop your object of Container i.e. &lt;b&gt;ERoles &lt;/b&gt;table on &lt;b&gt;Method Pane&lt;/b&gt;.&lt;br /&gt;Alternatively, you can create a new class from tool box by defining all the elements.&lt;br /&gt;Finally, click on ‘Save’ when done.&lt;br /&gt;&lt;br /&gt;Many author says that the next step should be adding the logics but my opinion is you should have at-least one interface to interact user then may go for logics.&lt;br /&gt;&lt;br /&gt;So, lets start to create a UI:&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Creation of Views &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;Right Click on &lt;b&gt;Home&lt;/b&gt; folder under &lt;b&gt;Views&lt;/b&gt; folder to add new Views.&lt;br /&gt;Select Add -&gt;  View &lt;b&gt;Create.aspx, Home.aspx&lt;/b&gt; these are the two views we need here.&lt;br /&gt;&lt;br /&gt;Now Double click on &lt;b&gt;Index.aspx &lt;/b&gt; and put following lines there:&lt;br /&gt;&lt;br /&gt;First include namespace:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;%@ Import Namespace="MVCApplicationStepAhead.Models" %&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Now, rewrite the above with following code:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head id="Head1" runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;Employee Roles&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;    &amp;lt;div&amp;gt;&lt;br /&gt;        &amp;lt;h1&amp;gt;&lt;br /&gt;            Employee Roles&amp;lt;/h1&amp;gt;&lt;br /&gt;        &amp;lt;ul&amp;gt;&lt;br /&gt;            &amp;lt;%foreach (RoleE roleE in (IEnumerable)ViewData.Model)&lt;br /&gt;              {%&amp;gt;&lt;br /&gt;            &amp;lt;li&amp;gt;&lt;br /&gt;                &amp;lt;%if (roleE.IsRetiree)&lt;br /&gt;                  { %&amp;gt;&lt;br /&gt;                &amp;lt;font color="red"&amp;gt;&lt;br /&gt;                    &amp;lt;%= roleE.HireDate.ToShortDateString() %&amp;gt;&lt;br /&gt;                    --&lt;br /&gt;                    &amp;lt;%=  roleE.Role1%&amp;gt;&lt;br /&gt;                &amp;lt;/font&amp;gt;&lt;br /&gt;                &amp;lt;%}&lt;br /&gt;                  else&lt;br /&gt;                  { %&amp;gt;&lt;br /&gt;                &amp;lt;a href="/Home/Complete/&amp;lt;%=roleE.Id.ToString() %&amp;gt;"  &amp;gt;Change Role as Retiree&amp;lt;/a&amp;gt;&lt;br /&gt;                &amp;lt;%= roleE.HireDate.ToShortDateString() %&amp;gt;&lt;br /&gt;                --&lt;br /&gt;                &amp;lt;%= roleE.Role1 %&amp;gt;&lt;br /&gt;                &amp;lt;% } %&amp;gt;&lt;br /&gt;            &amp;lt;/li&amp;gt;&lt;br /&gt;            &amp;lt;% } %&amp;gt;&lt;br /&gt;        &amp;lt;/ul&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;a href="/Home/Create"&amp;gt;Add New Task&amp;lt;/a&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The above piece of code – just defining the activities of getting Available roles of Employee, adding new roles with Employee, changing Employee current roles.&lt;br /&gt;In &lt;b&gt;Create.aspx &lt;/b&gt; page we pull some new roles, use following code:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Create.aspx.cs" Inherits="MVCApplicationStepAhead.Views.Home.Create" %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;    &amp;lt;div&amp;gt;&lt;br /&gt;        &amp;lt;h1&amp;gt;&lt;br /&gt;            Add New Role&amp;lt;/h1&amp;gt;&lt;br /&gt;        &amp;lt;form method="post" action="/Home/CreateNew"&amp;gt;&lt;br /&gt;        &amp;lt;label for="role"&amp;gt;&lt;br /&gt;            Role: &amp;lt;/label&amp;gt;&lt;br /&gt;        &amp;lt;input type="text" name="role" /&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;input type="submit" value="Add Task" /&amp;gt;&lt;br /&gt;        &amp;lt;/form&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;As you can check here we are using &lt;b&gt;post&lt;/b&gt;method.&lt;br /&gt;Do not confuse with both above two pages, very soon you will get all the answers of your queries:&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;&lt;Font color=red&gt;Creation of Controllers: &lt;/font&gt;&lt;/h4&gt; &lt;br /&gt;Click on &lt;b&gt;Controllers&lt;/b&gt; folder and add new &lt;b&gt;MVC controller, &lt;/b&gt; named as &lt;b&gt;HomeController.cs&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Put the following lines there:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.Linq;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Web.Mvc;&lt;br /&gt;using System.Web.Mvc.Ajax;&lt;br /&gt;using MVCApplicationStepAhead.Models;&lt;br /&gt;&lt;br /&gt;namespace MVCApplicationStepAhead.Controllers&lt;br /&gt;{&lt;br /&gt;    public class HomeController : Controller&lt;br /&gt;    {&lt;br /&gt;        private EmpRoleDataContext dbEmpRole = new EmpRoleDataContext();&lt;br /&gt; &lt;br /&gt;        //Display a list of Roles&lt;br /&gt;        public ActionResult Index()&lt;br /&gt;        {&lt;br /&gt;            var roles = from r in dbEmpRole.RoleEs   orderby r.HireDate descending select r;&lt;br /&gt;             &lt;br /&gt;            //return View();&lt;br /&gt;            return View(roles.ToList());&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        //New  Role form&lt;br /&gt;        public ActionResult Create()&lt;br /&gt;        {&lt;br /&gt;            return View();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        //Adding new Roles&lt;br /&gt;&lt;br /&gt;        public ActionResult CreateNew(string roleDescription)&lt;br /&gt;        {&lt;br /&gt;            //New role to database&lt;br /&gt;            RoleE newRole = new RoleE();&lt;br /&gt;            newRole.Role1 = roleDescription;&lt;br /&gt;            newRole.IsRetiree = false;&lt;br /&gt;            newRole.HireDate=DateTime.Now;&lt;br /&gt;&lt;br /&gt;            dbEmpRole.RoleEs.InsertOnSubmit(newRole);&lt;br /&gt;            &lt;br /&gt;            return RedirectToAction("Index");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        //Mark that Role has been Completed&lt;br /&gt;        public ActionResult Complete(int Id)&lt;br /&gt;        {&lt;br /&gt;            //database tasks here&lt;br /&gt;            var roles = from r  in dbEmpRole.RoleEs  where r.Id == Id select r;&lt;br /&gt;            &lt;br /&gt;            foreach (RoleE  match in roles)&lt;br /&gt;                match.IsRetiree = true;&lt;br /&gt;&lt;br /&gt;            dbEmpRole.SubmitChanges();&lt;br /&gt;&lt;br /&gt;            return RedirectToAction("Index");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Finally, we reach to conclusion:&lt;br /&gt;Now you can build application or run application:&lt;br /&gt;Start the above application by pressing &lt;b&gt;F5&lt;/b&gt;&lt;br /&gt;Add some new roles, change roles to retiree etc.&lt;br /&gt;&lt;h5&gt;&lt;Font color=red&gt;Conclusion &lt;/font&gt;&lt;/h5&gt; &lt;br /&gt;The ASP.NET MVC provides us a huge availability to represent our application in of  &lt;abbr title="Model Viewer Controller"&gt; MVC &lt;/abbr&gt; manner:&lt;br /&gt;The folder structure of an MVC project differs from that of an ASP.NET Web site project. The MVC project contains the following folders:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Content Folder : &lt;/font&gt; This folder contains the style sheets. Basically this folder having responsible files for page layout, design etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Controller Folder : &lt;/font&gt; As ot pronounced from name this folder contains the controller files like &lt;i&gt;AccountController.cs&lt;/i&gt; and &lt;i&gt;HomeController.cs&lt;/i&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Models Folder : &lt;/font&gt; Contains Data Model files.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;Script Folder : &lt;/font&gt; Contains Script files.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;Font color=red&gt;View Folder : &lt;/font&gt; For view page files. This folder contains three subfolders: Account, Home, and Shared. The Account folder contains views that are used as UI for logging in and changing passwords. The Home folder contains an Index view (the default starting page for the application) and an About page view. The Shared folder contains the master page view for the application. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;This all above for Tutorial Part – II.&lt;br /&gt;We will include some advance topics in our next tutorials.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-2726929403802142896?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/2726929403802142896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/aspnet-mvc-step-ahead-series-part-ii.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2726929403802142896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/2726929403802142896'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/aspnet-mvc-step-ahead-series-part-ii.html' title='ASP.NET MVC – A Step Ahead Series: Part-II'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4770630995962650858</id><published>2008-11-16T02:28:00.000+05:30</published><updated>2008-11-16T02:35:04.767+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Code Dom: A Step Ahead Series'/><title type='text'>Code Dom: A Step Ahead Series</title><content type='html'>&lt;b&gt;Code Dom: A Step Ahead Series&lt;/b&gt;&lt;br /&gt;&lt;h3&gt;Introduction:&lt;/h3&gt;&lt;br /&gt;This is a continuation to my earlier post &lt;a href="http://www.dotnetspider.com/resources/22221-C-The-Language-A-Step-Ahead-Series-Part-II.aspx"&gt; C#-The Language : A Step Ahead Series-Part-II&lt;/a&gt;&lt;br /&gt;The following code snippet showed the power of CODE DOM:&lt;br /&gt;&lt;code &gt;&lt;br /&gt;/* This Example is a part of different &lt;br /&gt;* examples shown in Book: &lt;br /&gt;* C#2005 Beginners: A Step Ahead&lt;br /&gt;* Written by: Gaurav Arora &lt;br /&gt;* Reach at : &lt;a href="www.msdotnetheaven.com"&gt;msdotnetheaven&lt;/a&gt;*/&lt;br /&gt;&lt;br /&gt;// File name : CodeDomExpl.cs&lt;br /&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.ComponentModel;&lt;br /&gt;using System.CodeDom;&lt;br /&gt;using System.CodeDom.Compiler;&lt;br /&gt;using Microsoft.CSharp;&lt;br /&gt;using System.IO;&lt;br /&gt;&lt;br /&gt;namespace CSharp.AStepAhead.CodeDomExpl&lt;br /&gt;{&lt;br /&gt;    public class CodeDomExpl&lt;br /&gt;    {&lt;br /&gt;        public static void Main()&lt;br /&gt;        {&lt;br /&gt;            Console.Clear();&lt;br /&gt;            Console.Write("This will create a simple Console aplication\n");&lt;br /&gt;            Console.Write("\n Enter Namespace: ");&lt;br /&gt;            string nmSpace = Console.ReadLine();&lt;br /&gt;                        &lt;br /&gt;            Console.Write("\n Enter Class file name: ");&lt;br /&gt;            string fName = Console.ReadLine();&lt;br /&gt;            &lt;br /&gt;            Console.Write("\n Enter Output file name: ");&lt;br /&gt;            string oFname = Console.ReadLine();&lt;br /&gt;            &lt;br /&gt;            Console.Write("\n Enter Your message: ");&lt;br /&gt;            string msg = Console.ReadLine();&lt;br /&gt;&lt;br /&gt;            if (nmSpace.Length == 0)&lt;br /&gt;                nmSpace = "CSharp.AStepAhead.CodeDomExpl";&lt;br /&gt;            if (fName.Length==0)&lt;br /&gt;                fName = "CodeDomExpl.cs";&lt;br /&gt;            if (oFname.Length==0)&lt;br /&gt;                oFname ="CodeDomExpl.exe";&lt;br /&gt;            if (msg.Length==0)&lt;br /&gt;                msg = "Hello! I am created using CodeDom i.e. Code Document Object Model.";&lt;br /&gt;            &lt;br /&gt;          &lt;br /&gt;           &lt;br /&gt;            //Validate enteries&lt;br /&gt;            nmSpace = CodeDomExpl.chkValid(nmSpace,0);&lt;br /&gt;            fName = CodeDomExpl.chkValid(fName,1);&lt;br /&gt;            oFname = CodeDomExpl.chkValid(oFname,2);&lt;br /&gt;            msg = CodeDomExpl.chkValid(msg,3);&lt;br /&gt;            &lt;br /&gt;            //create an instance of the class&lt;br /&gt;            GenerateConsoleApp oC = new GenerateConsoleApp(nmSpace,fName,oFname,msg);&lt;br /&gt;            oC.CreateCode();&lt;br /&gt;            Console.WriteLine("\nApplication crated :\nSource File Name :{0}\nExecutable File Name :{1}", fName, oFname);&lt;br /&gt;            Console.ReadLine();&lt;br /&gt;            return;&lt;br /&gt;        }&lt;br /&gt;        public static string chkValid(string str,int id)&lt;br /&gt;        {&lt;br /&gt;            string newStr=string.Empty;&lt;br /&gt;            string filePath = @"F:\myWrittings\CSharpBook\Source Codes\CodeDomApplications\";&lt;br /&gt;            switch (id)&lt;br /&gt;            {&lt;br /&gt;                case 3: //message&lt;br /&gt;                    {&lt;br /&gt;                        newStr = str;&lt;br /&gt;&lt;br /&gt;                        break;&lt;br /&gt;                    }&lt;br /&gt;                case 2: //output file name&lt;br /&gt;                    {&lt;br /&gt;                        &lt;br /&gt;                            int i = str.IndexOf(".");&lt;br /&gt;&lt;br /&gt;                            newStr = (i &gt; 0) ? filePath + str.Substring(0, i) + ".exe" : filePath + str + ".exe";&lt;br /&gt;                       &lt;br /&gt;                        break;&lt;br /&gt;                    }&lt;br /&gt;                &lt;br /&gt;&lt;br /&gt;           &lt;br /&gt;                case 1: //class file name&lt;br /&gt;                    {&lt;br /&gt;                       &lt;br /&gt;                            int i = str.IndexOf(".");&lt;br /&gt;                            newStr = (i &gt; 0) ? filePath + str.Substring(0, i) + ".cs" : filePath + str + ".cs";&lt;br /&gt;                       &lt;br /&gt;                        break;&lt;br /&gt;                    }&lt;br /&gt;                case 0: //namespace&lt;br /&gt;                    {&lt;br /&gt;                        &lt;br /&gt;                            int i = str.IndexOf(".");&lt;br /&gt;                            newStr = "CSharp.AStepAhead.";&lt;br /&gt;                            newStr += (i &gt; 0) ? str.Substring(0, i) : str;&lt;br /&gt;                       &lt;br /&gt;                        break;&lt;br /&gt;                    }&lt;br /&gt;            }&lt;br /&gt;            return newStr;&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public class GenerateConsoleApp&lt;br /&gt;    {&lt;br /&gt;&lt;br /&gt;        public string nameSpace; &lt;br /&gt;        public string sourceFile; &lt;br /&gt;        public string executingFile;&lt;br /&gt;        public string customMessage;        &lt;br /&gt;&lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;        public GenerateConsoleApp()&lt;br /&gt;        {&lt;br /&gt;        }&lt;br /&gt;        public GenerateConsoleApp(string nmSpace, string csFile,string exeFile,string msg)&lt;br /&gt;        {&lt;br /&gt;            nameSpace = nmSpace;&lt;br /&gt;            sourceFile = csFile;&lt;br /&gt;            executingFile = exeFile;&lt;br /&gt;            customMessage = msg;&lt;br /&gt;        }&lt;br /&gt;        public void CreateCode()&lt;br /&gt;        {&lt;br /&gt;            CodeCompileUnit unit = GenerateCode();&lt;br /&gt;&lt;br /&gt;            // Set up options for source code style &lt;br /&gt;            CodeGeneratorOptions opts = new CodeGeneratorOptions();&lt;br /&gt;            opts.BracingStyle = "C";&lt;br /&gt;            opts.IndentString = "\t";&lt;br /&gt;            &lt;br /&gt;&lt;br /&gt;            // Create code generator and write code file &lt;br /&gt;            CSharpCodeProvider cscp = new CSharpCodeProvider();&lt;br /&gt;&lt;br /&gt;            ICodeGenerator gen = cscp.CreateGenerator();&lt;br /&gt;            &lt;br /&gt;            StreamWriter sw = new StreamWriter(sourceFile);&lt;br /&gt;            gen.GenerateCodeFromCompileUnit(unit, sw, opts);&lt;br /&gt;            sw.Close();&lt;br /&gt;&lt;br /&gt;            CompilerParameters compilerParams = new CompilerParameters();&lt;br /&gt;            compilerParams.GenerateExecutable = true;&lt;br /&gt;            &lt;br /&gt;            compilerParams.OutputAssembly = executingFile;&lt;br /&gt;            &lt;br /&gt;            ICodeCompiler compiler = cscp.CreateCompiler();&lt;br /&gt;             &lt;br /&gt;            compiler.CompileAssemblyFromFile(compilerParams, sourceFile);&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;        private CodeCompileUnit GenerateCode()&lt;br /&gt;        {&lt;br /&gt;            CodeEntryPointMethod objMainMethod = new CodeEntryPointMethod();&lt;br /&gt;            objMainMethod.Name = "Main";&lt;br /&gt;&lt;br /&gt;            // generate this expression: Console &lt;br /&gt;            CodeTypeReferenceExpression consoleType = new CodeTypeReferenceExpression();&lt;br /&gt;            consoleType.Type = new CodeTypeReference(typeof(Console));&lt;br /&gt;&lt;br /&gt;            // Set up the argument list to pass to Console.WriteLine() &lt;br /&gt;            CodeExpression[] writeLineArgs = new CodeExpression[1];&lt;br /&gt;            CodePrimitiveExpression arg0 = new CodePrimitiveExpression(customMessage);&lt;br /&gt;            writeLineArgs[0] = arg0;&lt;br /&gt;&lt;br /&gt;            // generate this statement: Console.WriteLine(message) &lt;br /&gt;            CodeMethodReferenceExpression writeLineRef = new CodeMethodReferenceExpression(consoleType, "WriteLine");&lt;br /&gt;            CodeMethodInvokeExpression writeLine = new CodeMethodInvokeExpression(writeLineRef, writeLineArgs);&lt;br /&gt;&lt;br /&gt;            // generate this statement: Console.ReadLine() &lt;br /&gt;            CodeMethodReferenceExpression readLineRef = new CodeMethodReferenceExpression(consoleType, "ReadLine");&lt;br /&gt;            CodeMethodInvokeExpression readLine = new CodeMethodInvokeExpression(readLineRef);&lt;br /&gt;&lt;br /&gt;            // Add Main() method to a class &lt;br /&gt;            CodeTypeDeclaration theClass = new CodeTypeDeclaration();&lt;br /&gt;            theClass.Members.Add(objMainMethod);&lt;br /&gt;                        &lt;br /&gt;            string className = string.Empty;&lt;br /&gt;            //retrieve actual class name&lt;br /&gt;            int j = sourceFile.LastIndexOf(@"\");&lt;br /&gt;            int k = sourceFile.IndexOf(".");&lt;br /&gt;            className = sourceFile.Substring(j + 1, k - j - 1);&lt;br /&gt;&lt;br /&gt;          &lt;br /&gt;            // Add both the code of WriteLine and Readline&lt;br /&gt;            objMainMethod.Statements.Add(writeLine);&lt;br /&gt;            objMainMethod.Statements.Add(readLine);&lt;br /&gt;&lt;br /&gt;            // Add namespace and add class &lt;br /&gt;            CodeNamespace ns = new CodeNamespace(nameSpace);&lt;br /&gt;            ns.Imports.Add(new CodeNamespaceImport("System"));&lt;br /&gt;            ns.Types.Add(theClass);&lt;br /&gt;&lt;br /&gt;            // Generate the Compile Unit&lt;br /&gt;            CodeCompileUnit unit = new CodeCompileUnit();&lt;br /&gt;            unit.Namespaces.Add(ns);&lt;br /&gt;&lt;br /&gt;            return unit;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/Code&gt;&lt;br /&gt;&lt;br /&gt;To represent source code, CodeDOM elements are linked to each other to form a data  structure known as a CodeDOM graph, which models the structure of some source code.&lt;br /&gt;&lt;br /&gt;The &lt;em&gt;System.CodeDom&lt;/em&gt; namespace defines types that can represent the logical  structure of source code, independent of a specific programming language.&lt;br /&gt;&lt;br /&gt;Simply, it is an object model which represents actually source code. It is designed to be language independent.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Some common uses for the CodeDOM include: &lt;/h4&gt;&lt;br /&gt;&lt;ul type="disc"&gt;&lt;br /&gt;&lt;li&gt;Templated code generation: generating code for ASP.NET, XML Web services client proxies, code wizards, designers, or other code-emitting mechanisms.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Dynamic compilation: supporting code compilation in single or multiple languages.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4770630995962650858?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4770630995962650858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/code-dom-step-ahead-series.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4770630995962650858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4770630995962650858'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/code-dom-step-ahead-series.html' title='Code Dom: A Step Ahead Series'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1879803661797307233</id><published>2008-11-16T02:23:00.000+05:30</published><updated>2008-11-16T02:27:35.370+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Partial Class'/><category scheme='http://www.blogger.com/atom/ns#' term='Iterators'/><category scheme='http://www.blogger.com/atom/ns#' term='Nullable – At a glance'/><category scheme='http://www.blogger.com/atom/ns#' term='Control State'/><title type='text'>Control State, Partial Class, Iterators, Nullable – At a glance</title><content type='html'>&lt;b&gt;&lt;Font color="red"&gt;Control State, Partial Class, Iterators, Nullable – At a glance &lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Control State &lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Control State&lt;/b&gt; is a new feature added in &lt;b&gt;Asp.net2.0&lt;/b&gt; framework. Control state is very similar to &lt;b&gt;View State&lt;/b&gt;, where value is stored in the &lt;Font color="red"&gt;&lt;b&gt;hidden_VIEWSTATE &lt;/b&gt;&lt;/font&gt; form field, with a little difference i.e. Control State cannot be disabled. Control state is intended to be used only for storing crucial information across postbacks.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Partial Classes &lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Partial Classes &lt;/b&gt; are new feature added to the &lt;b&gt;.net framework 2.0&lt;/b&gt;. Partial classes allow dividing up a single class into multiple class file. These classes are combined into a single class later when compiling. To create a partial class there is a simple keyword &lt;b&gt;partial&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;Font color="red"&gt;&lt;b&gt;Example: &lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;public partial class MathClass&lt;br /&gt;{&lt;br /&gt; public int Add(int a, int b)&lt;br /&gt; {&lt;br /&gt;  return a+b;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public partial class MathClass&lt;br /&gt;{&lt;br /&gt; public int Substract(int a, int b)&lt;br /&gt; {&lt;br /&gt;  return a-b;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;At compile time system gather the information of all relevant partial classes &lt;Font color="red"&gt;&lt;b&gt;MathClass &lt;/b&gt;&lt;/font&gt; in above case, and combined all into a single class.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Iterators &lt;/h2&gt;&lt;br /&gt;&lt;b&gt;Iterators &lt;/b&gt; enable us to use foreach loops on  our own &lt;b&gt;custom types&lt;/b&gt;. To achieve the same we need to have class implement the &lt;Font color="red"&gt;&lt;b&gt;IEnumerable &lt;/b&gt;&lt;/font&gt; interface.&lt;br /&gt;&lt;br /&gt;&lt;Font color="red"&gt;&lt;b&gt;Example: &lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;Code&gt;&lt;br /&gt;public class mylistClass&lt;br /&gt;{&lt;br /&gt; internal object[] objElements;&lt;br /&gt; internal int intcount;&lt;br /&gt; public IEnumerator GetEnumerator()&lt;br /&gt;{&lt;br /&gt; yield return “Gaurav”;&lt;br /&gt; yield return “Shuby”;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;//here is the use&lt;br /&gt;//put following code at anywhere as per your requirement, I used it on page_load&lt;br /&gt;&lt;br /&gt;Void pageload(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt; //create an instance of class&lt;br /&gt; mylistClass custList = new mylistClass();&lt;br /&gt; &lt;br /&gt; foreach (String custItem in custList)&lt;br /&gt; {&lt;br /&gt;  Response.Write(“Item : “ +custItem.ToString() + “&amp;lt;br/&amp;gt;”);&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/Code&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note: &lt;/b&gt;&lt;br /&gt;You need to include &lt;Font color="red"&gt;&lt;b&gt;System.Collections &lt;/b&gt;&lt;/font&gt; namespace in above.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt; Nullable &lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt; Nullable &lt;/b&gt; types are instances if &lt;Font color="red"&gt;&lt;b&gt;System.Nullable&lt;/b&gt;&lt;/font&gt;. A nullable  type can represent the normal range of values of its underlying value type plus an additional null value.&lt;br /&gt;&lt;br /&gt;&lt;Font color="red"&gt;&lt;b&gt;Example: &lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;namespace AStepAhead.Nullable&lt;br /&gt;{&lt;br /&gt;    class nullableclass&lt;br /&gt;    {&lt;br /&gt;        static void Main(string[] args)&lt;br /&gt;        {&lt;br /&gt;            int? num = null;&lt;br /&gt;            int? num1 = null;&lt;br /&gt;            if (num.HasValue == true)&lt;br /&gt;            {&lt;br /&gt;                Console.WriteLine("Num : {0}", num);&lt;br /&gt;            }&lt;br /&gt;            else&lt;br /&gt;            {&lt;br /&gt;                Console.WriteLine("Num has Null value");&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            //int y = num.GetValueOrDefault();  //throw an exception&lt;br /&gt;            int z;&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;                //y = num.Value;&lt;br /&gt;                //Console.WriteLine("Y:{0}", y);&lt;br /&gt;                z = num1 ?? 2;&lt;br /&gt;                Console.WriteLine("Z:{0}", z);&lt;br /&gt;            }&lt;br /&gt;            catch(Exception ex)&lt;br /&gt;            {&lt;br /&gt;                Console.WriteLine(ex.Message);&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;            Console.ReadLine();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;b&gt;Note: &lt;/b&gt;&lt;br /&gt;You need to include &lt;Font color="red"&gt;&lt;b&gt; System.Collections.Generic &lt;/b&gt;&lt;/font&gt; namespace in above.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1879803661797307233?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1879803661797307233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/control-state-partial-class-iterators.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1879803661797307233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1879803661797307233'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/11/control-state-partial-class-iterators.html' title='Control State, Partial Class, Iterators, Nullable – At a glance'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-913381995404120919</id><published>2008-10-13T18:19:00.000+05:30</published><updated>2008-10-13T18:20:13.570+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Silverlight2.0 : releases on Monday</title><content type='html'>&lt;strong&gt;Get ready for Silverlight2.0 release on Monday&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I got the news from one of my friend and want to share the same with you. MicroSoft decided to release Silverlight2.0 on Monday.&lt;br /&gt;&lt;br /&gt;I have not more for its:&lt;br /&gt;&lt;ol&gt;1. Features&lt;br /&gt;2. Working&lt;br /&gt;3. New implementations&lt;br /&gt;4. Flexibility etc.&lt;/ol&gt;&lt;br /&gt;Only the idea is that its a great inventions in the new era.&lt;br /&gt;&lt;br /&gt;For more information pelase visit : &lt;a href="http://news.cnet.com/8301-13860_3-10063722-56.html"&gt;http://news.cnet.com/8301-13860_3-10063722-56.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-913381995404120919?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/913381995404120919/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/silverlight20-releases-on-monday.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/913381995404120919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/913381995404120919'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/silverlight20-releases-on-monday.html' title='Silverlight2.0 : releases on Monday'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1158003447936404853</id><published>2008-10-08T19:05:00.000+05:30</published><updated>2008-10-08T19:11:02.203+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><title type='text'>Visual Studio 2010 : MicroSoft Next release</title><content type='html'>&lt;strong&gt;Visual Studio 2010 : MicroSoft Next release&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;In the world of languages MicroSoft will introduce its new release very soon. The .net version is 4.0 for this release.&lt;br /&gt;There are lot of following lot of promises :&lt;br /&gt;1. Improved Software testing tools&lt;br /&gt;2. Database functions for application lifecycle management&lt;br /&gt;&lt;br /&gt;For more detail please visit : &lt;a href="http://www.cio.com/article/print/451622"&gt;Visual Studio 2010&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1158003447936404853?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1158003447936404853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/visual-studio-2010-microsoft-next.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1158003447936404853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1158003447936404853'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/visual-studio-2010-microsoft-next.html' title='Visual Studio 2010 : MicroSoft Next release'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-5098352157162452570</id><published>2008-10-06T19:42:00.000+05:30</published><updated>2008-10-08T19:05:34.112+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><title type='text'>Want to Shrink Images - Now its easy by Yahoo tool</title><content type='html'>&lt;b&gt;Want to Shrink Images - its easy with Yahoo tool&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Whenever I want to put some images on my website, I stucked with the size issues of images [this is the most known issue]. I thank to entire development team of &lt;a href ="http://www.yahoo.com"&gt;Yahoo&lt;/a&gt;, who have introduced a new Web based tool &lt;a href="http://smushit.com"&gt;smush it&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To know more in detail please visit : &lt;a href="http://news.cnet.com/8301-17939_109-10057453-2.html"&gt;Yahoo makes it easy!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Some of the feature(s):&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;It shrinks the size.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;It contains the visibility.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;It converets format too.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;and many more unbelievable features.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-5098352157162452570?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/5098352157162452570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/want-to-shrink-images-now-its-easy-by.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5098352157162452570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/5098352157162452570'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/10/want-to-shrink-images-now-its-easy-by.html' title='Want to Shrink Images - Now its easy by Yahoo tool'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-8035447896310732336</id><published>2008-08-30T21:38:00.000+05:30</published><updated>2008-08-30T21:49:04.240+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tecnology news  .  IPhone app  .  Google app  .  Google  .  Gogle Store  .  Android app  .'/><title type='text'>Android apps store - by Google</title><content type='html'>Its a new lime way of Google, on Thursday Google walks to start application store similiar to iPhone's App, this storeis for &lt;b&gt;Android apps&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Actually, I am also very much beginner to this one as anyone else.&lt;br /&gt;&lt;br /&gt;To more in details please visit:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html"&gt;Android Developers Blog&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.infoworld.com/archives/emailPrint.jsp?R=printThis&amp;A=/article/08/08/28/Google_introduces_Android_apps_store_1.html"&gt;http://www.infoworld.com/archives/emailPrint.jsp?R=printThis&amp;A=/article/08/08/28/Google_introduces_Android_apps_store_1.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Please share your update knowledge about technical news.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-8035447896310732336?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.dotnetspider.com/resources/ViewResource.aspx?resourceId=20587' title='Android apps store - by Google'/><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/8035447896310732336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/android-apps-store-by-google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8035447896310732336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/8035447896310732336'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/android-apps-store-by-google.html' title='Android apps store - by Google'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6873929038764779590</id><published>2008-08-10T01:36:00.000+05:30</published><updated>2008-08-10T01:39:58.248+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='SqlServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Technology News'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>MicroSoft's Greatest Release : SQL Server 2008</title><content type='html'>On Wednesday MicroSoft releases SQL Server 2008 .&lt;br /&gt;&lt;br /&gt;This is the great invention to the older ones' like SQL Server 2000 and SQL Server 2005. But, all the work is not put ahead Microsoft on top in the Warehouse Market. There are still Oracle, IBM abd TeraData.&lt;br /&gt;&lt;br /&gt;For viewers and MicroSoft Well-wishers [like me...] are very much happy to read this news.&lt;br /&gt;&lt;br /&gt;Lets share the news and celebaret the among our world.&lt;br /&gt;&lt;br /&gt;For more info visit :&lt;br /&gt;&lt;a href="http://www.informationweek.com/shared/printableArticle.jhtml?articleID=209903873"&gt;http://www.informationweek.com/shared/printableArticle.jhtml?articleID=209903873&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6873929038764779590?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6873929038764779590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/microsofts-greatest-release-sql-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6873929038764779590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6873929038764779590'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/microsofts-greatest-release-sql-server.html' title='MicroSoft&apos;s Greatest Release : SQL Server 2008'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-288421406344729360</id><published>2008-08-10T01:11:00.000+05:30</published><updated>2008-08-10T01:34:12.901+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='structure'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Classes and Structures</title><content type='html'>Lets take these in general words, these are template from which you define object to access their functionalities. The programmers of C++ and Java are well aware from these two names. Till now from above reading you new that Classes are reference type and structures are value type so they are stored on Heap and Stack respectively in memory.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Structures&lt;/strong&gt;&lt;br /&gt;A structure in C# is simply a composite data type [you are well aware from composite data type, refer to data types for more details], which consists number of members of other types. The structure define simply by using the struct keyword&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;td&gt;&lt;tr&gt;&lt;br /&gt;struct enroll&lt;br /&gt;{&lt;br /&gt;public string name, fname, mname;&lt;br /&gt;public string char sex;&lt;br /&gt;Public int age;&lt;br /&gt;public string address;&lt;br /&gt;}&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Important points towards structures&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;There are some points towards structures:&lt;br /&gt;1. Structures are C# composite data types&lt;br /&gt;2. By default like classes structures are public&lt;br /&gt;3. Sealed and Abstract modifiers cant applicable on structures&lt;br /&gt;4. Structures have no inheritance features&lt;br /&gt;5. A variable of structure type contains all the data of structure&lt;br /&gt;6. Structures cant allow a destructor&lt;br /&gt;7. By default C# provides a constructor with no parameter, but explicitly you cant use and replace it.&lt;br /&gt;8. Initializations of fields are not allowed.&lt;br /&gt;&lt;hr color="blue"&gt;&lt;br /&gt;&lt;strong&gt;Classes&lt;/strong&gt;&lt;br /&gt;It is cleared from above study that Classes are reference type. A class is a collection of its data members. Data members are those members of class which contains the data of class like fields, constants and events etc. Class is declared simply just followed by class keyword with optional modifiers; by default C# classes are public.&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;class myClass&lt;br /&gt;{&lt;br /&gt;public int xyz;&lt;br /&gt;public string name;&lt;br /&gt;public const int y=22;&lt;br /&gt;}&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr color="blue"&gt;&lt;br /&gt;In above, all members are public, when we declare members we can optionally supply modifiers, in C# all class members private by default.&lt;br /&gt;&lt;br /&gt;&lt;table border="1" color="blue"&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;/* This Example is a part of different&lt;br /&gt;* examples shown in Book:&lt;br /&gt;* C#2005 Beginners: A Step Ahead&lt;br /&gt;* Written by: Gaurav Arora&lt;br /&gt;* Reach at : gaurav.aroraose@yahoo.co.in*/&lt;br /&gt;// File name : classstructue.cs&lt;br /&gt;using System;&lt;br /&gt;namespace CSharp.AStepAhead.classstructue&lt;br /&gt;{&lt;br /&gt;class enroll&lt;br /&gt;{&lt;br /&gt;string name, fname;&lt;br /&gt;int age;&lt;br /&gt;char sex;&lt;br /&gt;void getInfo()&lt;br /&gt;{&lt;br /&gt;Console.WriteLine("Enter Name: ");&lt;br /&gt;name = Console.ReadLine();&lt;br /&gt;Console.WriteLine("Enter Father Name: ");&lt;br /&gt;fname = Console.ReadLine();&lt;br /&gt;Console.WriteLine("Enter age: ");&lt;br /&gt;age = int.Parse(Console.ReadLine());&lt;br /&gt;Console.WriteLine("Enter Sex [Male -m, Female - f]: ");&lt;br /&gt;sex = char.Parse(Console.ReadLine());&lt;br /&gt;}&lt;br /&gt;void showInfo()&lt;br /&gt;{&lt;br /&gt;Console.Clear();&lt;br /&gt;Console.WriteLine("You have provided following information(s): \n");&lt;br /&gt;Console.WriteLine(" Name : {0}\n Father Name : {1}\n Age : {2}\n Sex : {3}", name, fname, age, sex);&lt;br /&gt;Console.ReadLine();&lt;br /&gt;}&lt;br /&gt;static void Main()&lt;br /&gt;{&lt;br /&gt;//Create an object of class&lt;br /&gt;enroll objEnroll = new enroll();&lt;br /&gt;objEnroll.getInfo();&lt;br /&gt;objEnroll.showInfo();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-288421406344729360?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/288421406344729360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/classes-and-structures.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/288421406344729360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/288421406344729360'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/classes-and-structures.html' title='Classes and Structures'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3717430837686586026</id><published>2008-08-10T01:10:00.000+05:30</published><updated>2008-08-10T01:11:34.537+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='moonlight'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='mono'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Moonlight : Handles Silverlight Application in Unix</title><content type='html'>As you knew that Mono project provides the platform to run .Net application on UNIX. Now, there is a new term Silverlight in the field of .Net so, what about the UNIX fellows.&lt;br /&gt;Will they stand alone?&lt;br /&gt;No, Mono has decided to plan Moonlight which runs on Unix for Silverlight.&lt;br /&gt;&lt;br /&gt;To do the same:&lt;br /&gt;-One need SDK&lt;br /&gt;-Build Silverlight program&lt;br /&gt;&lt;br /&gt;For more detail please visit: &lt;a href="http://www.mono-project.com/Moonlight"&gt;http://www.mono-project.com/Moonlight&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3717430837686586026?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3717430837686586026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/moonlight-handles-silverlight.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3717430837686586026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3717430837686586026'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/moonlight-handles-silverlight.html' title='Moonlight : Handles Silverlight Application in Unix'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4679006942765300673</id><published>2008-08-10T01:08:00.000+05:30</published><updated>2008-09-13T15:18:45.575+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='CAS'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='mono'/><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft'/><title type='text'>Mono Project - CAS</title><content type='html'>I have very little idea about Mono Project, it is a Software platform which helps to develop cross-platform applications. This is a great one helps us to run .net on Unix.&lt;br /&gt;It has C# Compiler &lt;a href="http://www.mono-project.com/CSharp_Compiler"&gt;http://www.mono-project.com/CSharp_Compiler&lt;/a&gt;, Mono Runtime &lt;a href="http://www.mono-project.com/Mono:Runtime"&gt;http://www.mono-project.com/Mono:Runtime&lt;/a&gt;, &lt;br /&gt;These all are as per ECMA &lt;a href="http://www.mono-project.com/ECMA "&gt;http://www.mono-project.com/ECMA &lt;/a&gt;&lt;br /&gt;In Version Mono 1.2 there is no security model like CAS – Code Access Security, but in future version Mono will be with &lt;abbr title="Code Access Security"&gt;CAS.&lt;/abbr&gt;&lt;br /&gt;&lt;br /&gt;For more information please visit : &lt;a href="http://www.mono-project.com/CAS "&gt;http://www.mono-project.com/CAS &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4679006942765300673?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4679006942765300673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/mono-project-cas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4679006942765300673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4679006942765300673'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/mono-project-cas.html' title='Mono Project - CAS'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1749055939968528491</id><published>2008-08-10T01:05:00.000+05:30</published><updated>2008-08-10T01:07:59.370+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Computer joke'/><title type='text'>World’s costlier computer: Human Being</title><content type='html'>Teacher: Tell me the name of cheapest computer in the universe&lt;br /&gt;KMG: Human Being&lt;br /&gt;There is whispering in class, teacher also shocked.&lt;br /&gt;Teacher: What are you saying? How?&lt;br /&gt;KMG: I am right mam&lt;br /&gt;There are noises in the class and teacher is in angry mood&lt;br /&gt;Teacher [strictly]: You are wrong, sit down.&lt;br /&gt;KMG: I can prove it mam&lt;br /&gt;Teacher: I said, sit down. Otherwise you will punish.&lt;br /&gt;KMG: No, mam let me prove:&lt;br /&gt;-Humans have CPU: their brain&lt;br /&gt;-Humans have vision: their eyes&lt;br /&gt;-Humans also need resources: Glucose, air, water etc.&lt;br /&gt;-Humans have voice: Can communicate in different languages&lt;br /&gt;There is silence in class, teacher asked suddenly&lt;br /&gt;Teacher: Ok, Ok but how it is cheap.&lt;br /&gt;KMG: Humans have heart: No computer has heart&lt;br /&gt;Heart pumps 24X7 and then its CPU work and functioning. It’s absolutely free.&lt;br /&gt;Neuron system developed on the basis of human CPU&lt;br /&gt;Teacher: Yes, yes&lt;br /&gt;Suddenly, another student interfere&lt;br /&gt;Pankaj: No, mam it’s not cheaper. It is costlier in compare to Computers&lt;br /&gt;It creates noise&lt;br /&gt;It creates pollution&lt;br /&gt;It cuts greenery&lt;br /&gt;It makes bombs&lt;br /&gt;It creates partitions between regions&lt;br /&gt;Today, brain is heavy on heart and nobody control it.&lt;br /&gt;Mam, Human-being knew there is no life without Greenery, Air, Sun, Water, they knew piece is the best, then why they are playing with their lives.&lt;br /&gt;Teacher: Pankaj, this is not our subject.&lt;br /&gt;KMG: No, mam, its. Sorry, mam, I was wrong Pankaj is right. Is it possible to control human-being like Operator can control computers.&lt;br /&gt;Teacher: silence&lt;br /&gt;Pankaj: Mam, we are growing we need piece, greenery and want to be cheaper computer in the world&lt;br /&gt;Teacher: Right&lt;br /&gt;KMG: If you knew it then why don’t you teach others?&lt;br /&gt;Teacher: Again silence&lt;br /&gt;Pankaj: Are they big student mam?&lt;br /&gt;Teacher: Don’t know who will teach them or how they will learn all these? But, till that day “World’s Costlier Computer is Human-Being”.&lt;br /&gt;&lt;br /&gt;There are lots of questions in the mind of students, which can easily be ignored. But, what about you.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Think it again and again…..&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1749055939968528491?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1749055939968528491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/worlds-costlier-computer-human-being.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1749055939968528491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1749055939968528491'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/worlds-costlier-computer-human-being.html' title='World’s costlier computer: Human Being'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3133719319889696086</id><published>2008-08-05T15:17:00.000+05:30</published><updated>2008-08-05T15:46:06.080+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='rewards'/><category scheme='http://www.blogger.com/atom/ns#' term='news'/><category scheme='http://www.blogger.com/atom/ns#' term='general'/><title type='text'>Got Editor's Choice Award</title><content type='html'>I am feeling great to share good news with all of you. I got the prestigious award from &lt;a href="http://www.dotnetspider.com"&gt;dotnetspider&lt;/a&gt;, this is a prestigious award in the life of any Technical guy. This is the golden day in my life.&lt;br /&gt;&lt;br /&gt;I am very much thankful to the community to choose me for such a great honor. For more info please Visit this page for the list of winners - &lt;a href="http://www.dotnetspider.com/credits/Index.aspx"&gt;http://www.dotnetspider.com/credits/Index.aspx&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3133719319889696086?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3133719319889696086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/got-editors-choice-award.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3133719319889696086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3133719319889696086'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/got-editors-choice-award.html' title='Got Editor&apos;s Choice Award'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6882942685031814097</id><published>2008-08-04T19:21:00.000+05:30</published><updated>2008-08-04T19:25:04.959+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>A Simple VideoPlayer Custom COntrol - Uses in application</title><content type='html'>In my previous post, I have presented a Video Player Custom control which plays all type of streaming media. Now, here I am presenting a simple way to apply the same custom control in web application.&lt;br /&gt;&lt;br /&gt;File Name : VideoPLayerCustomControl.aspx&lt;br /&gt;&amp;lt;%@ Page Language="C#" AutoEventWireup="true" CodeFile="VideoPLayerCustomControl.aspx.cs"&lt;br /&gt;    Inherits="VideoPLayerCustomControl" %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%@ Register TagPrefix="whPlayer" TagName= "vaPlayer" Src="~/videoPlayer.ascx" %&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head runat="server"&amp;gt;&lt;br /&gt;    &amp;lt;title&amp;gt;Video Player Using Custom Control&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;    &amp;lt;form id="form1" runat="server"&amp;gt;&lt;br /&gt;        &amp;lt;div align="center"&amp;gt;&lt;br /&gt;        &amp;lt;whPlayer:vaPlayer ID="videoPlayer" autoStart="true" runat="server"  /&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;asp:ValidationSummary id="valSumm" runat="server" /&amp;gt;&lt;br /&gt;        &amp;lt;asp:Label ID="lblVideoName" Text="Enter Video Name" runat ="server" /&amp;gt;&lt;br /&gt;        &amp;lt;asp:TextBox ID="txtVideoName" runat="server" EnableViewState="true" Text="D:\Videos\AVSEQ06.DAT" /&amp;gt;&lt;br /&gt;        &amp;lt;asp:Button ID="btnPlayVide" runat="server" OnClick="btnPlayVide_Click" Text="Play Video" /&amp;gt;&lt;br /&gt;        &amp;lt;asp:RequiredFieldValidator id="rfvtxtVideoName" ControlToValidate="txtVideoName" text="*" ErrorMessage="Please eneter Video to play" runat="server" /&amp;gt;        &lt;br /&gt;&lt;br /&gt;        &amp;lt;/div&amp;gt;&lt;br /&gt;    &amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;File Name : VideoPLayerCustomControl.aspx.cs&lt;br /&gt;/* This Example is a part of different &lt;br /&gt; * examples shown in Book: &lt;br /&gt; * C#2005 Beginners: A Step Ahead&lt;br /&gt; * Written by: Gaurav Arora &lt;br /&gt; * Reach at : g_arora@hotmail.com */&lt;br /&gt;using System;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Web.Security;&lt;br /&gt;using System.Web.UI;&lt;br /&gt;using System.Web.UI.WebControls;&lt;br /&gt;using System.Web.UI.WebControls.WebParts;&lt;br /&gt;using System.Web.UI.HtmlControls;&lt;br /&gt;&lt;br /&gt;public partial class VideoPLayerCustomControl : System.Web.UI.Page&lt;br /&gt;{&lt;br /&gt;    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;    {        &lt;br /&gt;        if (Request.QueryString["sourceUrl"] != null)&lt;br /&gt;            this.videoPlayer.sourceUrl = Convert.ToString(Request.QueryString["sourceUrl"]);&lt;br /&gt;&lt;br /&gt;        videoPlayer.autoStart = true;&lt;br /&gt;        videoPlayer.height = "300";&lt;br /&gt;        videoPlayer.width = "300";&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    protected void btnPlayVide_Click(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        if(IsValid)        &lt;br /&gt;            Response.Redirect("videoplayercustomcontrol.aspx?sourceUrl=" + txtVideoName.Text);&lt;br /&gt;        &lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Steps to run the application &lt;br /&gt;1. Open VS2005&lt;br /&gt;2. Select New Web application&lt;br /&gt;&lt;br /&gt;3. Add new Page from existing pages and browse to attachment&lt;br /&gt;4. Run the applcation by prssing F5&lt;br /&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;br /&gt;3. If not want to add new page just copy and paste the content from above, code(s)&lt;br /&gt;4. Make sure all contents would be copied and then press F5&lt;br /&gt;&lt;br /&gt;and then Enjoy the video...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6882942685031814097?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6882942685031814097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/simple-videoplayer-custom-control-uses.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6882942685031814097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6882942685031814097'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/simple-videoplayer-custom-control-uses.html' title='A Simple VideoPlayer Custom COntrol - Uses in application'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-4360329066949565497</id><published>2008-08-04T17:34:00.001+05:30</published><updated>2008-08-04T17:41:17.531+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='info'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>A VideoPlayer - Custom Control</title><content type='html'>Some day ago, I have faced a little problem to show streaming contents on my Web-Projects, I have gone through many R &amp; d’s and then decided to write a custom control for the same, then I have written a custom control.&lt;br /&gt;&lt;br /&gt;Here, the same, I want to share with you:&lt;br /&gt;&lt;strong&gt;File Name : videoPlayer.ascx&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%@ Control Language="C#" AutoEventWireup="true" CodeFile="videoPlayer.ascx.cs" Inherits="videoPlayer" %&amp;gt;&lt;br /&gt;&amp;lt;asp:PlaceHolder ID="phError" runat="server" Visible="false"&amp;gt;&lt;br /&gt;    &amp;lt;%asp:Label ID="lblError" runat="server" ForeColor="Red" Text="Error" /&amp;gt;&lt;br /&gt;&amp;lt;/asp:PlaceHolder&amp;gt;&lt;br /&gt;&amp;lt;asp:Table ID="tblPlayer" runat="server" BorderWidth="1"&amp;gt;&lt;br /&gt;    &amp;lt;asp:TableRow&amp;gt;&lt;br /&gt;        &amp;lt;asp:TableCell&amp;gt;&lt;br /&gt;            &amp;lt;asp:Literal ID="ltVideo" runat="server" /&amp;gt;&lt;br /&gt;        &amp;lt;/asp:TableCell&amp;gt;&lt;br /&gt;    &amp;lt;/asp:TableRow&amp;gt;&lt;br /&gt;&amp;lt;/asp:Table&amp;gt;&lt;br /&gt;&lt;br /&gt;Now, lets start to write code-behind as follows: &lt;br /&gt;&lt;strong&gt;File Name : videoPlayer.ascx.cs&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;/* This Example is a part of different &lt;br /&gt; * examples shown in Book: &lt;br /&gt; * C#2005 Beginners: A Step Ahead&lt;br /&gt; * Written by: Gaurav Arora &lt;br /&gt; * Reach at : g_arora@hotmail.com */&lt;br /&gt;using System;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Web.Security;&lt;br /&gt;using System.Web.UI;&lt;br /&gt;using System.Web.UI.WebControls;&lt;br /&gt;using System.Web.UI.WebControls.WebParts;&lt;br /&gt;using System.Web.UI.HtmlControls;&lt;br /&gt;&lt;br /&gt;public partial class videoPlayer : System.Web.UI.UserControl&lt;br /&gt;{&lt;br /&gt;    #region Properties to customize the Video/Audio Control&lt;br /&gt;&lt;br /&gt;    /// &lt;br /&gt;    /// true:FullScreen, false:CustomSize&lt;br /&gt;    /// &lt;br /&gt;    public Boolean isFullSize&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["isFullSize"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["isFullSize"] != null)&lt;br /&gt;                return Convert.ToBoolean(ViewState["isFullSize"]);&lt;br /&gt;            else&lt;br /&gt;                return true;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Full url-path of Video/Audio&lt;br /&gt;    /// &lt;br /&gt;    public String sourceUrl&lt;br /&gt;    {&lt;br /&gt;&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["sourceUrl"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["sourceUrl"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["sourceUrl"]);&lt;br /&gt;            else&lt;br /&gt;                return "http://www.video.com/myVideo.mpeg"; //Default video&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// width of player&lt;br /&gt;    /// &lt;br /&gt;    public String width&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["width"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["width"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["width"]);&lt;br /&gt;            else&lt;br /&gt;                return "640";&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Height of player&lt;br /&gt;    /// &lt;br /&gt;    public String height&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["height"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["height"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["height"]);&lt;br /&gt;            else&lt;br /&gt;                return "480";&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Custom message when player initializes&lt;br /&gt;    /// &lt;br /&gt;    public String standByMessage&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["standByMessage"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["standByMessage"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["standByMessage"]);&lt;br /&gt;            else&lt;br /&gt;                return "Please wait while the player inializes...";&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// States whether media automatic starts or not &lt;br /&gt;    /// &lt;br /&gt;    public Boolean autoStart&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["autoStart"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["autoStart"] != null)&lt;br /&gt;                return Convert.ToBoolean(ViewState["autoStart"]);&lt;br /&gt;            else&lt;br /&gt;                return true;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// -100 is fully left, 100 is fully right.  &lt;br /&gt;    /// &lt;br /&gt;    public String balance&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["balance"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;                if (ViewState["balance"] != null)&lt;br /&gt;                    return Convert.ToString(ViewState["balance"]);&lt;br /&gt;                else&lt;br /&gt;                    return "0";&lt;br /&gt;            }&lt;br /&gt;            catch&lt;br /&gt;            {&lt;br /&gt;                return "0";&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Position in seconds when starting. &lt;br /&gt;    /// &lt;br /&gt;    public Int32 currentPosition&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["currentPosition"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["currentPosition"] != null)&lt;br /&gt;                return Convert.ToInt32(ViewState["currentPosition"]);&lt;br /&gt;            else&lt;br /&gt;                return 0;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    /// &lt;br /&gt;    /// Show play/stop/pause controls&lt;br /&gt;    /// &lt;br /&gt;    public Boolean showcontrols&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["showcontrols"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["showcontrols"] != null)&lt;br /&gt;                return Convert.ToBoolean(ViewState["showcontrols"]);&lt;br /&gt;            else&lt;br /&gt;                return true;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Allow right-click&lt;br /&gt;    /// &lt;br /&gt;    public Boolean contextMenu&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["contextMenu"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["contextMenu"] != null)&lt;br /&gt;                return Convert.ToBoolean(ViewState["contextMenu"]);&lt;br /&gt;            else&lt;br /&gt;                return false;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Toggle sound on/off&lt;br /&gt;    /// &lt;br /&gt;    public Boolean mute&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["mute"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["mute"] != null)&lt;br /&gt;                return Convert.ToBoolean(ViewState["mute"]);&lt;br /&gt;            else&lt;br /&gt;                return false;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Number of times the content will play&lt;br /&gt;    /// &lt;br /&gt;    public Int32 playCount&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["playCount"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["playCount"] != null)&lt;br /&gt;                return Convert.ToInt32(ViewState["playCount"]);&lt;br /&gt;            else&lt;br /&gt;                return 1;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// 0.5=Slow, 1.0=Normal, 2.0=Fast&lt;br /&gt;    /// &lt;br /&gt;    public Double rate&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["rate"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["rate"] != null)&lt;br /&gt;               return Convert.ToDouble(ViewState["rate"]);&lt;br /&gt;            else&lt;br /&gt;                return 1.0;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// full, mini, custom, none, invisible &lt;br /&gt;    /// &lt;br /&gt;    public String uiMode&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["uiMode"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["uiMode"] != null)&lt;br /&gt;                return Convert.ToString(ViewState["uiMode"]);&lt;br /&gt;            else&lt;br /&gt;                return "Full";&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    /// &lt;br /&gt;    /// Show or hide the name of the file/url   &lt;br /&gt;    /// &lt;br /&gt;    public Boolean showDisplay&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["showDisplay"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["showDisplay"] != null)&lt;br /&gt;               return Convert.ToBoolean(ViewState["showDisplay"]);&lt;br /&gt;            else&lt;br /&gt;                return false;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    /// &lt;br /&gt;    /// 0=lowest, 50= normal, 100=highest &lt;br /&gt;    /// &lt;br /&gt;    public Int32 volume&lt;br /&gt;    {&lt;br /&gt;        set&lt;br /&gt;        {&lt;br /&gt;            ViewState["volume"] = value;&lt;br /&gt;        }&lt;br /&gt;        get&lt;br /&gt;        {&lt;br /&gt;            if (ViewState["volume"] != null)&lt;br /&gt;               return Convert.ToInt32(ViewState["volume"]);&lt;br /&gt;            else&lt;br /&gt;                return 50;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    #endregion&lt;br /&gt;&lt;br /&gt;    protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        &lt;br /&gt;        try&lt;br /&gt;        {&lt;br /&gt;            ltVideo.Text = this.VideoPlayer(this.sourceUrl, this.isFullSize);&lt;br /&gt;        }&lt;br /&gt;        catch (Exception ex)&lt;br /&gt;        {&lt;br /&gt;            lblError.Text = ex.ToString();&lt;br /&gt;            phError.Visible = true;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    #region VideoPlayer&lt;br /&gt;    /// &lt;br /&gt;    /// Return the whPlayer to Play Video/ Audio Content&lt;br /&gt;    /// &lt;br /&gt;    /// Source of content&lt;br /&gt;    /// Size of Player&lt;br /&gt;    /// &lt;br /&gt;    private string VideoPlayer(string strsourceUrl, bool boolFullSize)&lt;br /&gt;    {&lt;br /&gt;        string whPlayer = "";&lt;br /&gt;        strsourceUrl = strsourceUrl + "";&lt;br /&gt;        strsourceUrl = strsourceUrl.Trim();&lt;br /&gt;&lt;br /&gt;        if (strsourceUrl.Length &amp;lt; 0)&lt;br /&gt;        {&lt;br /&gt;            //play content &lt;br /&gt;        }&lt;br /&gt;        else&lt;br /&gt;        {&lt;br /&gt;            throw new System.ArgumentNullException("strsourceUrl");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        if (boolFullSize)&lt;br /&gt;        {&lt;br /&gt;            //this.width = String.Empty;&lt;br /&gt;            //this.height = String.Empty;&lt;br /&gt;            this.width = "800";&lt;br /&gt;            this.height = "600";&lt;br /&gt;        }&lt;br /&gt;        else&lt;br /&gt;        {&lt;br /&gt;            //continue with supplied width/height&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        whPlayer = whPlayer + "";&lt;br /&gt;&lt;br /&gt;        return whPlayer;&lt;br /&gt;    }&lt;br /&gt;    #endregion&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;In Next article, I will tell you &lt;em&gt;how to use the VideoPlayer Custom Control?&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-4360329066949565497?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/4360329066949565497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/videoplayer-custom-control.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4360329066949565497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/4360329066949565497'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/videoplayer-custom-control.html' title='A VideoPlayer - Custom Control'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1400354031617893869</id><published>2008-08-03T19:07:00.000+05:30</published><updated>2008-08-03T19:08:53.689+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='info'/><category scheme='http://www.blogger.com/atom/ns#' term='news'/><category scheme='http://www.blogger.com/atom/ns#' term='general'/><title type='text'>Really Midori supersedes Windows?</title><content type='html'>I have got news from one of my reader that in future there will be a new name Midori instead of Windows. Till today there is no official definition for Midori but Midori is a componentized and a non-windows operating system.&lt;br /&gt;&lt;br /&gt;So, let’s prepare for a new upcoming era. I want to share the news with all of you, just visit: &lt;a href="http://www.infoworld.com/archives/emailPrint.jsp?R=printThis&amp;A=/article/08/07/29/Microsoft_prepares_for_end_of_Windows_with_Midori_1.html"&gt;Microsoft prepares for end of Windows with Midori&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-1400354031617893869?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/1400354031617893869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/really-midori-supersedes-windows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1400354031617893869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/1400354031617893869'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/08/really-midori-supersedes-windows.html' title='Really Midori supersedes Windows?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-3227143160223784119</id><published>2008-07-27T20:12:00.000+05:30</published><updated>2008-07-27T20:20:09.232+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='clr'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='dlr'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>What is DLR?</title><content type='html'>Yes, this is a new name heard by me. I am very much beginner for DLR. I know little about DLR and the same sharing with you.&lt;br /&gt;&lt;br /&gt;DLR stands for Dynamic Language Runtime, it would be a layer top on the CLR.&lt;br /&gt;&lt;br /&gt;For more detail, must look these links:-&lt;br /&gt;&lt;br /&gt;&lt;a href="http://geekswithblogs.net/ranganh/archive/2008/07/24/dlr-hosting.aspx"&gt;http://geekswithblogs.net/ranganh/archive/2008/07/24/dlr-hosting.aspx&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/seshadripv/"&gt;http://blogs.msdn.com/seshadripv/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/sdlsdk"&gt;http://www.codeplex.com/sdlsdk&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/hugunin/archive/2007/04/30/a-dynamic-language-runtime-dlr.aspx"&gt;http://blogs.msdn.com/hugunin/archive/2007/04/30/a-dynamic-language-runtime-dlr.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-3227143160223784119?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/3227143160223784119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/what-is-dlr.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3227143160223784119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/3227143160223784119'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/what-is-dlr.html' title='What is DLR?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-337907073299338659</id><published>2008-07-27T17:57:00.000+05:30</published><updated>2008-12-09T06:04:21.224+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='SqlServer'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlscrpt'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>How to shuffle results - SqlServer?</title><content type='html'>This is an interesting question asked by &lt;strong&gt;Mr. Ram Nath Rao&lt;/strong&gt;.&lt;br /&gt;The history is:&lt;br /&gt;&lt;br /&gt;Mr. Nath wants to shuffle his record(s) every time when the page refreshes, the same has been tried with the use of &lt;strong&gt;rand()&lt;/strong&gt; function by him. Unfortunately, the results were not as expected.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Now, lets elaborate some of interesting points towards this :&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;When anybody use &lt;strong&gt;rand()&lt;/strong&gt; function what happened [check followings)]:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Select rand()as Random Number --creates random number&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;The result may be: &lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIxr4KodpaI/AAAAAAAAABk/oVgNMMtk41w/s1600-h/random.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIxr4KodpaI/AAAAAAAAABk/oVgNMMtk41w/s200/random.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5227671880141219234" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When you will repeat above statement, the new result is entirely different from the earlier one.&lt;br /&gt;&lt;br /&gt;Now, try another similar query:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Select rand()as Random_Number,* from Employees&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;The result may be:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIxtXi8j-yI/AAAAAAAAABs/4zx1N6c25ao/s1600-h/random1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIxtXi8j-yI/AAAAAAAAABs/4zx1N6c25ao/s320/random1.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5227673518755543842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In above, result note-down first column &lt;strong&gt;Random_Number&lt;/strong&gt;, this column has the similar value through-out the result.&lt;br /&gt;&lt;br /&gt;In another words from above, we can sum-it up that the &lt;strong&gt;rand()&lt;/strong&gt; function, generates a random number which is a new every time we press or execute the query.&lt;br /&gt;&lt;br /&gt;Also, it doesn't change with rows when result-set retrieves more than one row(s). So, the problem of Mr. Ram Nath Rao doesn't resolve with the use of &lt;strong&gt;rand() &lt;/strong&gt;function.&lt;br /&gt;&lt;br /&gt;I recommended &lt;strong&gt;newid()&lt;/strong&gt; to retrieve the solution of &lt;strong&gt;Mr. Ram's &lt;/strong&gt; problem.&lt;br /&gt;&lt;br /&gt;Check the following query:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Select newid()as RowId,* from Employees&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Above generates following result(s):-&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_PZLBlRUKSSw/SIxvpuN84yI/AAAAAAAAAB0/S4ymg9uXKbQ/s1600-h/random3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_PZLBlRUKSSw/SIxvpuN84yI/AAAAAAAAAB0/S4ymg9uXKbQ/s320/random3.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5227676030042170146" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Note-down first column of above result(s), every row has a new value.&lt;br /&gt;&lt;br /&gt;Now, lets try to ad-more stuff in above:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Select newid()as RowId,* from Employees order by newid()&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_PZLBlRUKSSw/SIxwhLy3CGI/AAAAAAAAAB8/Hk4HtSSXOnU/s1600-h/random4.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_PZLBlRUKSSw/SIxwhLy3CGI/AAAAAAAAAB8/Hk4HtSSXOnU/s320/random4.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5227676982874409058" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now, regenerate above result(s) one more time, you can get different resul(s). This is the solution of the problem.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The above is a short-description how we can get random data in SqlServer2000.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Its time to do all above at application-level, I have decided to use Vs2005:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Step(s) to use:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;1. Start your Vs2005&lt;br /&gt;2. Create a New Website project named its as 'Shuffle Result'.&lt;br /&gt;3. Rename your default web-page to 'shuffleresults.aspx'&lt;br /&gt;4. Write the following lines&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_PZLBlRUKSSw/SIx3gmKuTvI/AAAAAAAAACE/IbyRIPR9GJs/s1600-h/shuffleresults.aspx"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_PZLBlRUKSSw/SIx3gmKuTvI/AAAAAAAAACE/IbyRIPR9GJs/s320/shuffleresults.aspx" border="1" alt=""id="BLOGGER_PHOTO_ID_5227684669355347698" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;5. Press F7 or choose code-view from Solution-Explorer&lt;br /&gt;6. Add following sort-of-code in 'shuffleresults.aspx.cs'&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_PZLBlRUKSSw/SIx4u8zl7KI/AAAAAAAAACM/z6rSMU7qmpQ/s1600-h/shuffleresults.aspx.cs"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_PZLBlRUKSSw/SIx4u8zl7KI/AAAAAAAAACM/z6rSMU7qmpQ/s320/shuffleresults.aspx.cs" border="1" alt=""id="BLOGGER_PHOTO_ID_5227686015462141090" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;7. Run the above application by pressing F5.&lt;br /&gt;8. It will generate following result(s): &lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_PZLBlRUKSSw/SIx5qyd43KI/AAAAAAAAACU/XEAHtSU4lTU/s1600-h/shuffleresults-output.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_PZLBlRUKSSw/SIx5qyd43KI/AAAAAAAAACU/XEAHtSU4lTU/s320/shuffleresults-output.JPG" border="1" alt=""id="BLOGGER_PHOTO_ID_5227687043478903970" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is the normal output.&lt;br /&gt;&lt;br /&gt;9. Click on 'Shuffle Results' button and check the output it might be s following :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_PZLBlRUKSSw/SIx6SdC5FDI/AAAAAAAAACc/D-6EoGfZ8pg/s1600-h/shuffleresults-output1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_PZLBlRUKSSw/SIx6SdC5FDI/AAAAAAAAACc/D-6EoGfZ8pg/s320/shuffleresults-output1.JPG" border="1" alt=""id="BLOGGER_PHOTO_ID_5227687724923294770" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The above is described "How one can shuffle the result-sets".&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-337907073299338659?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/337907073299338659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/how-to-shuffle-results-sqlserver.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/337907073299338659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/337907073299338659'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/how-to-shuffle-results-sqlserver.html' title='How to shuffle results - SqlServer?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_PZLBlRUKSSw/SIxr4KodpaI/AAAAAAAAABk/oVgNMMtk41w/s72-c/random.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-601455176510933527</id><published>2008-07-20T01:03:00.000+05:30</published><updated>2008-12-09T06:04:21.339+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net'/><title type='text'>How to review .net application?</title><content type='html'>This is not the end when any application has been developed. After development there are many steps which must have to pass by an application. The same process is know as Code-Review process.&lt;br /&gt;&lt;br /&gt;Here are certain guidelines which are assembled by me for my work, I hope these will suits you. Your comments and further guidelines will recoupe our stuffs.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIJDu_NoEqI/AAAAAAAAABc/tqiXTzPcbHk/s1600-h/Code-Review-Guidelines.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_PZLBlRUKSSw/SIJDu_NoEqI/AAAAAAAAABc/tqiXTzPcbHk/s400/Code-Review-Guidelines.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5224812992224826018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is just a snapshot the guidelines due to limited resources I am unable to write here all document. You can collect the document by sending me a mail :&lt;br /&gt;&lt;strong&gt;gUnderscorearoraAthotmailDotcom with subject: Guidelines-Code-Review.&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-601455176510933527?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/601455176510933527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/how-to-review-net-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/601455176510933527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/601455176510933527'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/how-to-review-net-application.html' title='How to review .net application?'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_PZLBlRUKSSw/SIJDu_NoEqI/AAAAAAAAABc/tqiXTzPcbHk/s72-c/Code-Review-Guidelines.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-6198645198401580594</id><published>2008-07-13T00:41:00.000+05:30</published><updated>2008-07-13T01:58:03.411+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='SqlServer'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlscrpt'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><title type='text'>Database object naming conventions - SQLSERVER</title><content type='html'>&lt;strong&gt;Database object naming conventions&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;There is no such hard and fast rule to define database names, but I prefer to use some naming conventions which will polish your task(s):&lt;br /&gt;&lt;br /&gt;I always usee the following(s):-&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. Tables&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Tables &lt;/strong&gt;represent the instances of an entity. For example, you store all your customer information in a table. Here, 'customer' is an entity and all the rows in the customers table represent the instances of the entity 'customer'. So, why not name your table using the entity it represents, 'Customer'. Since the table is storing 'multiple instances' of customers, make your table name a plural word. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules&lt;/strong&gt;: Pascal notation; end with an &lt;em&gt;‘s’&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;Examples&lt;/strong&gt;: Employees, Customers, Headlines, Groups etc.&lt;br /&gt;&lt;br /&gt;This is a more natural way of naming tables, when compared to approaches which name tables as tblCustomers, tbl_Orders. Further, when you look at your queries it's very obvious that a particular name refers to a table, as table names are always preceded by FROM clause of the SELECT statement.&lt;br /&gt;&lt;br /&gt;If your database deals with different logical functions and you want to group your tables according to the logical group they belong to, it won't hurt prefixing your table name with a two or three character prefix that can identify the group. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2. Views &lt;/strong&gt;&lt;br /&gt;A view is nothing but a table,  for any application that is accessing it. So, the same naming convention defined above for tables, applies to views as well, but not always. Here are some exceptions:&lt;br /&gt;&lt;br /&gt;a) Views not always represent a single entity. A view can be a combination of two tables based on a join condition, thus, effectively representing two entities. In this case, consider combining the names of both the base tables. Here's an example:&lt;br /&gt;&lt;br /&gt;If there is a view combining two tables 'Customers' and 'Addresses', name the view as 'CustomersAddresses'. Same naming convention can be used with junction tables that are used to link two many-to-many related base tables. Most popular example is the 'TitleAuthor' table from 'Pubs' database of SQL Server.&lt;br /&gt;&lt;br /&gt;b) Views can summarize data from existing base tables in the form of reports. You can see this type of views in the 'Northwind' database that ships with SQL Server 7.0 and above. Here's the convention that database follows. (I prefer this):&lt;br /&gt;&lt;br /&gt;'Product Sales for 1997'&lt;br /&gt;'Summary of Sales by Quarter'&lt;br /&gt;'Summary of Sales by Year'&lt;br /&gt;&lt;br /&gt;However, try to stay away from spaces within object names.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;3. Stored Procedure&lt;/strong&gt;&lt;br /&gt;Stored procedures always do some work for you, they are action oriented. So, let their name describe the work they do. So, use a verb to describe the work.&lt;br /&gt;&lt;br /&gt;This is how I would name a stored procedure that fetches me the customer details given the customer identification number:&lt;br /&gt;'GetCustomerDetails'. Similarly, you could name a procedure that inserts a new customer information as 'InsertCustomerInfo'. Here are some more names based on the same convention: 'WriteAuditRecord', 'ArchiveTransactions', 'AuthorizeUser' etc.&lt;br /&gt;&lt;br /&gt;As explained above in the case of tables, you could use a prefix, to group stored procedures also, depending upon the logical group they belong to. For example, all stored procedures that deal with 'Order processing' could be prefixed with ORD_ as shown below:&lt;br /&gt;&lt;br /&gt;ORD_InsertOrder&lt;br /&gt;ORD_InsertOrderDetails&lt;br /&gt;ORD_ValidateOrder&lt;br /&gt;&lt;br /&gt;If you are using Microsoft SQL Server, never prefix your stored procedures with 'sp_', unless you are storing the procedure in the master database. If you call a stored procedure prefixed with sp_, SQL Server always looks for this procedure in the master database. Only after checking in the master database (if not found) it searches the current database. &lt;br /&gt;&lt;br /&gt;I do not agree with the approach of prefixing stored procedures with prefixes like 'sproc_' just to make it obvious that the object is a stored procedure. Any database developer/DBA can identify stored procedures as the procedures are always preceded by EXEC or EXECUTE keyword&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules:&lt;/strong&gt; sp&lt;App Name&gt;_[&lt;Group Name &gt;_]&lt;Action&gt;&amp;lt;table/logical instance&gt;&lt;br /&gt;&lt;strong&gt;Examples:&lt;/strong&gt; spOrders_GetNewOrders, spProducts_UpdateProduct&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;4. User Defined Functions&lt;/strong&gt;&lt;br /&gt;In Microsoft SQL Server 2000, User Defined Functions [UDFs] are almost similar to stored procedures, except for the fact that UDFs can be used in SELECT statements. Otherwise, both stored procedures and UDFs are similar. So, the naming conventions discussed above for stored procedures, apply to UDFs as well. You could even use a prefix to logically group your UDFs. For example, you could name all your string manipulation UDFs as shown below:&lt;br /&gt;&lt;br /&gt;str_MakeProperCase&lt;br /&gt;str_ParseString&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;5. Triggers &lt;/strong&gt;&lt;br /&gt;Though triggers are a special kind of stored procedures, it won't make sense to follow the same naming convention as we do for stored procedures.&lt;br /&gt;&lt;br /&gt;While naming triggers we have to extend the stored procedure naming convention in two ways: &lt;br /&gt;&lt;br /&gt;a) Triggers always depend on a base table and can't exist on their own. So, it's better to link the base table's name with the trigger name &lt;br /&gt;&lt;br /&gt;b) Triggers are associated with one or more of the following operations: Insert, Update, Delete. So, the name of the trigger should reflect it's nature &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules:&lt;/strong&gt; TR_&amp;lt;TableName&gt;_&lt;action&gt;&lt;br /&gt;&lt;strong&gt;Examples:&lt;/strong&gt; TR_Orders_UpdateProducts&lt;br /&gt;&lt;strong&gt;Notes:&lt;/strong&gt; The use of triggers is discouraged&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;6. Indexes &lt;/strong&gt;&lt;br /&gt;Just like triggers, indexes also can't exist on their own and they are dependent on the underlying base tables. So, again it makes sense to include the 'name of the table' and 'column on which it's built' in the index name. Further, indexes can be of two types, clustered and nonclustered. These two types of indexes could be either unique or non-unique. So, the naming convention should take care of the index types too.&lt;br /&gt;&lt;strong&gt;Rules: &lt;/strong&gt;IX_&amp;lt;TableName&gt;_&lt;columns separated by _&gt;&lt;br /&gt;&lt;strong&gt;Examples: &lt;/strong&gt;IX_Products_ProductID&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;7. Columns &lt;/strong&gt;&lt;br /&gt;Columns are attributes of an entity, that is, columns describe the properties of an entity. So, let the column names be meaningful and natural.&lt;br /&gt;&lt;br /&gt;Here's a simplest way of naming the columns of the Customers table:&lt;br /&gt;&lt;br /&gt;CustomerID&lt;br /&gt;CustomerFirstName&lt;br /&gt;CustomerAddress&lt;br /&gt;&lt;br /&gt;As shown above, it'll be a good idea to prefix the column names with the entity that they are representing.&lt;br /&gt;&lt;br /&gt;Here's another idea. Decide on a standard two to four character code for each table in your database and make sure it's unique in the database. For example 'Cust' for Customers table, 'Ord' for Orders tables, 'OrdD' for OrderDetails table, 'Adt' for Audit tables etc. Use this table code to prefix all the column names in that table. Advantage of this convention is that in multi-table queries involving complex joins, you don't have to worry about ambiguous column names, and don't have to use table aliases to prefix the columns. It also makes your queries more readable.&lt;br /&gt;&lt;br /&gt;If you have to name the columns in a junction/mapping table, concatenate the table codes of mapped tables, or come up with a new code for that combination of tables. &lt;br /&gt;&lt;br /&gt;So, here's how the CustomerID column would appear in Customers table:&lt;br /&gt;&lt;br /&gt;Cust_CustomerID&lt;br /&gt;&lt;br /&gt;The same CustomerID column appears in the Orders table too, but in Orders table, here's how it's named:&lt;br /&gt;&lt;br /&gt;Ord_CustomerID&lt;br /&gt;&lt;br /&gt;Some naming conventions even go to the extent of prefixing the column name with it's data type. But I don't like this approach, as I feel, the DBA or the developer dealing with these columns should be familiar with the data types these columns belong to.&lt;br /&gt;&lt;br /&gt;If a column references another table’s column, name it &amp;lt;table name&gt;ID&lt;br /&gt;&lt;strong&gt;Example:&lt;/strong&gt; The Customers table has an ID column&lt;br /&gt;The Orders table should have a CustomerID column&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;8. Uer Defined DataTypes &lt;/strong&gt;&lt;br /&gt;User defined data types are just a wrapper around the base types provided by the database management system. They are used to maintain consistency of data types across different tables for the same attribute. For example, if the CustomerID column appears half a dozen tables, you must use the same data type for all the occurrences of the CustomerID column. This is where user defined data types come in handy. Just create a user defined data type for CustomerID and use it as the data type for all the occurrences of CustomerID column.&lt;br /&gt;&lt;br /&gt;So, the simplest way of naming these user defined data types would be: &lt;br /&gt;&lt;em&gt;Column_Name + '_type'&lt;/em&gt;.&lt;br /&gt;So, I would name the CustoerID type as:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;CustomerID_type&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;9. Primary Keys &lt;/strong&gt;&lt;br /&gt;Primary key is the column(s) that can uniquely identify each row in a table. So, just use the column name prefixed with 'pk_' + 'Table name' for naming primary keys.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules: &lt;/strong&gt;PK_&amp;lt;TableName&gt;&lt;br /&gt;&lt;strong&gt;Examples: &lt;/strong&gt;PK_Products&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;10. Foreign Keys &lt;/strong&gt;&lt;br /&gt;Foreign key are used to represent the relationships between tables which are related. So, a foreign key can be considered as a link between the 'column of a referencing table' and the 'primary key column of the referenced table'.&lt;br /&gt;&lt;br /&gt;I prefer the following naming convention for foreign keys: &lt;br /&gt;&lt;br /&gt;fk_referencing table + referencing column_referenced table + referenced column.&lt;br /&gt;&lt;br /&gt;Based on the above convention, I would name the foreign key which references the CustomerID column of the Customers table from the Order's tables CustomerID column as:&lt;br /&gt;&lt;br /&gt;fk_OrdersCustomerID_CustomersCustomerID&lt;br /&gt;&lt;br /&gt;Foreign key can be composite too, in that case, consider concatenating the column names of referencing and referenced tables while naming the foreign key. This might make the name of the foreign key lengthy, but you shouldn't be worried about it, as you will never reference this name from your code, except while creating/dropping these constraints.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules: &lt;/strong&gt;FK_&amp;lt;TableName1&gt;_&amp;lt;TableName2&gt;&lt;br /&gt;&lt;strong&gt;Example: &lt;/strong&gt;FK_Products_Orderss&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;11. Defaults and Check Constrains &lt;/strong&gt;&lt;br /&gt;Use the column name to which these defaults/check constraints are bound to and prefix it with 'def' and 'chk' prefixes respectively for Default and Check constraints. &lt;br /&gt;I would name the default constraint for OrderDate Column as def_OrderDate and the check constraint for OrderDate column as chk_OrderDate.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Rules: &lt;/strong&gt;DF_&amp;lt;TableName&gt;_&lt;ColumnName&gt;&lt;br /&gt;&lt;strong&gt;Example: &lt;/strong&gt;DF_Products_Quantity&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;12. Variable &lt;/strong&gt;&lt;br /&gt;For variables that store the contents of columns, you could use the same naming convention that we used for Column names. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;13. General Rules &lt;/strong&gt;&lt;br /&gt; a)Do not use spaces in the name of database objects.&lt;br /&gt; b)Do not use SQL keywords as the name of database objects. In cases where this is necessary, surround the object name with brackets, such as [Year]&lt;br /&gt; c)Do not prefix stored procedures with &lt;em&gt;‘sp_’&lt;/em&gt; Prefix table names with the owner name.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;13. Strucure &lt;/strong&gt;&lt;br /&gt;a) Each table must have a primary key&lt;br /&gt;   o In most cases it should be an IDENTITY column named ID&lt;br /&gt;b) Normalize data to third normal form&lt;br /&gt;   o Do not compromise on performance to reach third normal form. Sometimes, a  little denormalization results in better performance.&lt;br /&gt;c) Do not use TEXT as a data type; use the maximum allowed characters of VARCHAR instead&lt;br /&gt;d) In VARCHAR data columns, do not default to NULL; use an empty string instead&lt;br /&gt;e) Columns with default values should not allow NULLs&lt;br /&gt;f) As much as possible, create stored procedures on the same database as the main tables they will be accessing.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;14. Formatting &lt;/strong&gt;&lt;br /&gt;· Use upper case for all SQL keywords&lt;br /&gt;  o SELECT, INSERT, UPDATE, WHERE, AND, OR, LIKE, etc.&lt;br /&gt;· Indent code to improve readability&lt;br /&gt;· Comment code blocks that are not easily understandable&lt;br /&gt;  o Use single-line comment markers(--)&lt;br /&gt;  o Reserve multi-line comments (/*.. ..*/) for blocking out sections of code&lt;br /&gt;· Use single quote characters to delimit strings.&lt;br /&gt;  o Nest single quotes to express a single quote or apostrophe within a string&lt;br /&gt;     For example, SET @sExample = 'SQL''s Authority'&lt;br /&gt;· Use parentheses to increase readability&lt;br /&gt;  o WHERE (color=’red’ AND (size = 1 OR size = 2))&lt;br /&gt;· Use BEGIN..END blocks only when multiple statements are present within a conditional code segment.&lt;br /&gt;· Use one blank line to separate code sections.&lt;br /&gt;· Use spaces so that expressions read like sentences.&lt;br /&gt;  o fillfactor = 25, not fillfactor=25&lt;br /&gt;· Format JOIN operations using indents&lt;br /&gt;  o Also, use ANSI Joins instead of old style joins4&lt;br /&gt;· Place SET statements before any executing code in the procedure.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;15. Coding &lt;/strong&gt;&lt;br /&gt;· Optimize queries using the tools provided by SQL Server5&lt;br /&gt;· Do not use SELECT *&lt;br /&gt;· Return multiple result sets from one stored procedure to avoid trips from the application server to SQL server&lt;br /&gt;· Avoid unnecessary use of temporary tables&lt;br /&gt;  o Use 'Derived tables' or CTE (Common Table Expressions) wherever possible, as they&lt;br /&gt;perform better.&lt;br /&gt;· Avoid using &lt;&gt; as a comparison operator&lt;br /&gt;  o Use ID IN(1,3,4,5) instead of ID &lt;&gt; 2&lt;br /&gt;· Use SET NOCOUNT ON at the beginning of stored procedures7&lt;br /&gt;· Do not use cursors or application loops to do inserts8&lt;br /&gt;  o Instead, use INSERT INTO&lt;br /&gt;· Fully qualify tables and column names in JOINs&lt;br /&gt;· Fully qualify all stored procedure and table references in stored procedures.&lt;br /&gt;· Do not define default values for parameters.&lt;br /&gt;  o If a default is needed, the front end will supply the value.&lt;br /&gt;· Do not use the RECOMPILE option for stored procedures.&lt;br /&gt;· Place all DECLARE statements before any other code in the procedure.&lt;br /&gt;· Do not use column numbers in the ORDER BY clause.&lt;br /&gt;· Do not use GOTO.&lt;br /&gt;· Check the global variable @@ERROR immediately after executing a data manipulation statement (like INSERT/UPDATE/DELETE), so that you can rollback the transaction if an error occurs&lt;br /&gt;  o Or use TRY/CATCH&lt;br /&gt;· Do basic validations in the front-end itself during data entry&lt;br /&gt;· Off-load tasks, like string manipulations, concatenations, row numbering, case conversions, type conversions etc., to the front-end applications if these operations are going to consume more CPU cycles on the database server&lt;br /&gt;· Always use a column list in your INSERT statements.&lt;br /&gt;  o This helps avoid problems when the table structure changes (like adding or dropping a column).&lt;br /&gt;· Minimize the use of NULLs, as they often confuse front-end applications, unless the applications are coded intelligently to eliminate NULLs or convert the NULLs into some other form.&lt;br /&gt;  o Any expression that deals with NULL results in a NULL output.&lt;br /&gt;  o The ISNULL and COALESCE functions are helpful in dealing with NULL values.&lt;br /&gt;· Do not use the identitycol or rowguidcol.&lt;br /&gt;· Avoid the use of cross joins, if possible.&lt;br /&gt;· When executing an UPDATE or DELETE statement, use the primary key in the WHERE condition, if possible. This reduces error possibilities.&lt;br /&gt;· Avoid using TEXT or NTEXT datatypes for storing large textual data.9&lt;br /&gt;  o Use the maximum allowed characters of VARCHAR instead&lt;br /&gt;· Avoid dynamic SQL statements as much as possible.10&lt;br /&gt;· Access tables in the same order in your stored procedures and triggers consistently.&lt;br /&gt;· Do not call functions repeatedly within your stored procedures, triggers, functions and batches.&lt;br /&gt;· Default constraints must be defined at the column level.&lt;br /&gt;· Avoid wild-card characters at the beginning of a word while searching using the LIKE keyword, as these results in an index scan, which defeats the purpose of an index. &lt;br /&gt;· Define all constraints, other than defaults, at the table level.&lt;br /&gt;· When a result set is not needed, use syntax that does not return a result set.&lt;br /&gt;· Avoid rules, database level defaults that must be bound or user-defined data types. While these are legitimate database constructs, opt for constraints and column defaults to hold the database consistent for development and conversion coding.&lt;br /&gt;· Constraints that apply to more than one column must be defined at the table level.&lt;br /&gt;· Use the CHAR data type for a column only when the column is non-nullable.14&lt;br /&gt;· Do not use white space in identifiers.&lt;br /&gt;· The RETURN statement is meant for returning the execution status only, but not data.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4759757065019231063-6198645198401580594?l=stuff4mdesktop.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stuff4mdesktop.blogspot.com/feeds/6198645198401580594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/database-object-naming-conventions.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6198645198401580594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4759757065019231063/posts/default/6198645198401580594'/><link rel='alternate' type='text/html' href='http://stuff4mdesktop.blogspot.com/2008/07/database-object-naming-conventions.html' title='Database object naming conventions - SQLSERVER'/><author><name>Gaurav</name><uri>http://www.blogger.com/profile/11221347225162133559</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_PZLBlRUKSSw/SddIwtyoGKI/AAAAAAAAADo/uHubB95qdgc/S220/GAURAV.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4759757065019231063.post-1446970206619075906</id><published>2008-07-13T00:24:00.000+05:30</published><updated>2008-07-13T00:30:41.729+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='SqlServer'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlscrpt'/><category scheme='http://www.blogger.com/atom/ns#' term='interview'/><title type='text'>What is the result when comparing two nulls in SQL?</title><content type='html'>The answer is quite interesting with my stuff. Let me clear it in more writting:&lt;br /&gt;&lt;br /&gt;1. When we compare two nulls then the result always 'false'. The mai
