<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DEMCR3s8fCp7ImA9WhRaGU8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660</id><updated>2012-02-22T11:01:06.574-05:00</updated><category term="state management" /><category term="SOLID principles" /><category term="C# currency convert" /><category term="Normalization" /><category term="Design patterns" /><category term="create desktop icon from command line" /><category term="strong name a dll" /><category term="cache" /><category term="asp.net db2 connectionstring" /><category term="CollectionBase" /><category term="wpf install application" /><category term="C# Dictionary example" /><category term="introduction to generics in .net" /><category term="run multiple sql scripts bat" /><category term="encrypt  web.config" /><category term="array arraylist" /><category term="asp.net exception handling" /><category term="batch file uninstall" /><category term="asp.net master page" /><category term="SQL database offline" /><category term="WCF client" /><category term="command line desktop shortcut" /><category term="public key private key" /><category term="enterprise library 5.0" /><category term="List(T) generics c#" /><category term="SQL SERVER" /><category term="validate email address" /><category term=".net basics fundamentals foundation" /><category term="Collection Classes (C#)" /><category term="asp.net mvc download" /><category term="asp.net deployment" /><category term="Object oriented programming concepts in C sharp" /><category term="HttpContext current user c# c sharp" /><title>Microsoft Dot Net</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://dotnetanalysis.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>75</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/jyvro" /><feedburner:info uri="blogspot/jyvro" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>blogspot/jyvro</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry gd:etag="W/&quot;CkYBRX49fSp7ImA9WhRaF0s.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-6208315811026847532</id><published>2012-02-19T21:24:00.000-05:00</published><updated>2012-02-20T12:49:14.065-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-20T12:49:14.065-05:00</app:edited><title>connection pooling in .net</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Connection Pooling in asp.net&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
If you are using asp.net to a SQL database, you will most likely use a SQL connection object. If you are using&amp;nbsp;SQL connection object, something called connection pooling is enabled by default. Now the question that naturally arises is what is connection pooling? &amp;nbsp;When your asp.net application connects to SQL server, opening a connection is resource intensive and takes time. So when you call close() on a connection, instead of actually closing the connection it gets returned to a "pool of connections". &lt;b&gt;&amp;nbsp;So this connection is&amp;nbsp;in fact&amp;nbsp;still open.&lt;/b&gt; Then next time you call an Open() on a sql connection, this pre existing open connection from the connection pool gets reused. This is called connection pooling. Connection pooling in managed by the ADO.net in the .net framework class library. &lt;br /&gt;
&lt;br /&gt;
Now what if multiple users perform an operation at the exact same time all of which require database connection? In that case new connections to the database will be opened, then all of them will be returned to the connection pool when close() is called on those connections.&lt;br /&gt;
&lt;br /&gt;
In case you don't close connections and your application pool reaches the maximum number of open connections (default is 100 open connections per connection pool), trying to open another connection after that will throw this error&lt;br /&gt;
&lt;br /&gt;
"&lt;i style="background-color: white;"&gt;&lt;span style="color: maroon; font-family: Verdana, sans-serif; font-size: 14pt;"&gt;Timeout expired. &amp;nbsp;The timeout period
elapsed prior to obtaining a connection from the pool. &amp;nbsp;This may have
occurred because all pooled connections were in use and max pool size was
reached.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
"&lt;br /&gt;
&lt;br /&gt;
So it is necessary to close a connection after the required operation is complete.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #2b91af; font-family: inherit;"&gt;SqlConnection&lt;/span&gt;&lt;span style="font-family: inherit;"&gt;.ClearAllPools() actually closes all the open connections for a&amp;nbsp;&lt;/span&gt;particular&lt;span style="font-family: inherit;"&gt;&amp;nbsp;application. (if you run an&amp;nbsp;&lt;/span&gt;&lt;span style="color: blue; font-family: inherit; line-height: 115%;"&gt;EXEC&lt;/span&gt;&lt;span style="font-family: inherit; line-height: 115%;"&gt; &lt;span style="color: maroon;"&gt;sp_who &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: inherit; line-height: 115%;"&gt;in SQL server before and after the&amp;nbsp;&lt;/span&gt;
ClearAllPools()&lt;span style="font-family: inherit;"&gt;&lt;span style="line-height: 115%;"&gt;, you can
see the connections being closed.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="line-height: 18px;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;&lt;u&gt;Affect of connection poling on performance&lt;/u&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="line-height: 115%;"&gt;Just for the fun of it, I ran the Query below once with the connection pooling disabled and the second time with connection pooling enabled.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;for&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; (&lt;span style="color: blue;"&gt;int&lt;/span&gt; i = 0; i &amp;lt;
100000; i++)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;SqlConnection&lt;/span&gt; conn = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;SqlConnection&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt; connectionString = System.Configuration.&lt;span style="color: #2b91af;"&gt;ConfigurationManager&lt;/span&gt;.ConnectionStrings[&lt;span style="color: #a31515;"&gt;"PlayGroundConnectionString"&lt;/span&gt;].ConnectionString;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
conn.ConnectionString = connectionString;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
conn.Open();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
conn.Close();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit; line-height: 18px;"&gt;These are the results&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Connection Pool Enabled?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Time&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;False&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;240 seconds&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;True&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;2.4 seconds&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
As you can see with the connection pooling enabled, the performance gains are extra ordinary.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="font-family: inherit; font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Connection Pooling Quiz&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;Q&amp;gt;How to disable connection pooling&lt;/b&gt;&lt;br /&gt;
A&amp;gt; This can be done in the connection string.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="background-color: white; color: #a31515; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;add&lt;/span&gt;&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="background-color: white; color: red; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;name&lt;/span&gt;&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;=&lt;/span&gt;&lt;span style="background-color: white; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;"&lt;span style="color: blue;"&gt;myConnectionString&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;connectionString&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;Data Source=MyServerName;Initial Catalog=&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 10pt; line-height: 21px;"&gt;MyDataBaseName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;&lt;span style="background-color: white;"&gt;;User ID=mySqlUserName;Password=myPassWord;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: x-small;"&gt;&lt;span style="line-height: 21px;"&gt;&lt;span style="background-color: yellow;"&gt;Pooling=False;&lt;/span&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: white; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;"&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="background-color: white; font-family: 'Droid Sans'; font-size: 15px; line-height: 21px; margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;providerName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;System.Data.SqlClient&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: transparent;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;Q&amp;gt;How many application pools can an application have?&lt;/b&gt;&lt;br /&gt;
A&amp;gt;Many&lt;span style="font-family: inherit;"&gt;. "&lt;a href="http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx"&gt;Connections are pooled per process, per application domain, per connection string and when integrated security is used, per Windows identity."&lt;/a&gt;&amp;nbsp;Even one character difference in two connection strings will result in two different connection pools. Hence it is safer to store the connection string in the web.config file.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Q&amp;gt;If connection pooling is disabled will the connections still be limited to 100 open connections?&lt;/b&gt;&lt;br /&gt;
A&amp;gt; No. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Q&amp;gt;If you enable windows authentication, what is its significance with respect to connection pooling?&lt;/b&gt;&lt;br /&gt;
&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span style="background-color: white; color: #a31515; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;connectionStrings&lt;/span&gt;&lt;span style="background-color: white; color: blue; font-family: Consolas; font-size: 9.5pt; line-height: 21px;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="background-color: white; font-family: 'Droid Sans'; font-size: 15px; line-height: 21px; margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;add&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;name&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;myConnectionString&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red;"&gt;connectionString&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;Data Source=MyServerName;Initial Catalog=MyDataBaseName;&lt;span style="background-color: yellow;"&gt;Integrated Security=True&lt;/span&gt;&lt;/span&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="background-color: white; font-family: 'Droid Sans'; font-size: 15px; line-height: 21px; margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;providerName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;System.Data.SqlClient&lt;/span&gt;"&lt;span style="color: blue;"&gt;&amp;nbsp;/&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="background-color: white; font-family: 'Droid Sans'; font-size: 15px; line-height: 21px; margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp; &amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;connectionStrings&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
A&amp;gt; Every time a new user logs in a new connection must be opened (because a new connection pool is created for every user). That would cause a large number of open connections if the application has a large number of users.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Q&amp;gt;If you reach the maximum number of&amp;nbsp;permissible&amp;nbsp;connections in a connection pool, how long would it wait before the next connection request is timed out?&lt;/b&gt;&lt;br /&gt;
A&amp;gt;15 seconds (default time out)&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Q&amp;gt;If connection pooling is enabled, when you try to connect to the database, will you see the login event on SQL trace?&lt;/b&gt;&lt;br /&gt;
A&amp;gt; If an open connection was fetched from the application pool you will not see it.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7997402329705633660-6208315811026847532?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GYrPnf75qpnRSRp-MGYx0dC9sKI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GYrPnf75qpnRSRp-MGYx0dC9sKI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GYrPnf75qpnRSRp-MGYx0dC9sKI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GYrPnf75qpnRSRp-MGYx0dC9sKI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/klcMUgnnGh8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/6208315811026847532/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/connection-pooling-in-net.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6208315811026847532?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6208315811026847532?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/klcMUgnnGh8/connection-pooling-in-net.html" title="connection pooling in .net" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/connection-pooling-in-net.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIDSXwzeSp7ImA9WhRaFUQ.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-5236179372189038041</id><published>2012-02-18T14:32:00.002-05:00</published><updated>2012-02-18T14:32:58.281-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-18T14:32:58.281-05:00</app:edited><title>How to read connection string from web.config (asp.net)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
To read connection string from web.config do the following&lt;br /&gt;
&lt;br /&gt;
1&amp;gt;Store connection string in web.config&lt;br /&gt;
&lt;br /&gt;
For using Windows Authentication, your connection string would look like&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;configuration&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;
&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;connectionStrings&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;add&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt; &lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;name&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;myConnectionString&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;connectionString&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;Data Source=MyServerName;Initial
Catalog=MyDataBaseName;&lt;span style="background-color: yellow;"&gt;Integrated Security=True&lt;/span&gt;&lt;/span&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;providerName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;System.Data.SqlClient&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;
&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;connectionStrings&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;configuration&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
For using SQL Authentication, your connection string would look like
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;configuration&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;
&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;connectionStrings&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;add&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt; &lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;name&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;myConnectionString&lt;/span&gt;"&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: red;"&gt;connectionString&lt;/span&gt;&lt;span style="color: blue;"&gt;=&lt;/span&gt;"&lt;span style="color: blue;"&gt;Data Source=MyServerName;Initial
Catalog=&lt;/span&gt;&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 10.0pt;"&gt;MyDataBaseName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;;&lt;span style="background-color: yellow;"&gt;User ID=mySqlUserName;Password=myPassWord&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;span style="color: red; font-family: Consolas; font-size: 9.5pt;"&gt;providerName&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;=&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;"&lt;span style="color: blue;"&gt;System.Data.SqlClient&lt;/span&gt;"&lt;span style="color: blue;"&gt; /&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;
&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;connectionStrings&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515; font-family: Consolas; font-size: 9.5pt;"&gt;configuration&lt;/span&gt;&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
2&amp;gt;Read connection string from C# code&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;string&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; connectionString = System.Configuration.&lt;span style="color: #2b91af;"&gt;ConfigurationManager&lt;/span&gt;.ConnectionStrings[&lt;span style="color: #a31515;"&gt;"myConnectionString"&lt;/span&gt;].ConnectionString;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&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/7997402329705633660-5236179372189038041?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/P4PoXj_rVF617oo7F8f71V3QJJw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/P4PoXj_rVF617oo7F8f71V3QJJw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/P4PoXj_rVF617oo7F8f71V3QJJw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/P4PoXj_rVF617oo7F8f71V3QJJw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/p3bPUOvdpJw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/5236179372189038041/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/how-to-read-connection-string-from.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5236179372189038041?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5236179372189038041?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/p3bPUOvdpJw/how-to-read-connection-string-from.html" title="How to read connection string from web.config (asp.net)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/how-to-read-connection-string-from.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8FQn04cCp7ImA9WhRaFUU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-2987638755073518934</id><published>2012-02-16T15:49:00.000-05:00</published><updated>2012-02-18T11:33:33.338-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-18T11:33:33.338-05:00</app:edited><title>Some useful tools for .net developers</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: gray; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="color: white;"&gt;Tool&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: gray; border-left: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="color: white;"&gt;URL&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: gray; border-left: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="color: white;"&gt;Purpose&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: gray; border-left: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="color: white;"&gt;Free&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;fiddler&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;a href="http://fiddler2.com/fiddler2/"&gt;http://fiddler2.com/fiddler2/&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Monitor the
  traffic between the browser and the websites&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Yes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;lumzy&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;a href="http://www.lumzy.com/"&gt;http://www.lumzy.com/&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Create&amp;nbsp;
  mock ups for websites for the clients to view and approve before you actually
  start building the website.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Yes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Beyond Compare&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;a href="http://www.scootersoftware.com/moreinfo.php"&gt;http://www.scootersoftware.com/moreinfo.php&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;A very useful
  tool for comparing differences in files and folders.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;30 day trial&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Collapse all
  projects within visual studio&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt; text-indent: -0.25in;"&gt;
&lt;span style="font-family: inherit;"&gt;·&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  VS 2008 –&amp;nbsp;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/DF3F0C30-3D37-4E06-9EF8-3BFF3508BE31"&gt;http://visualstudiogallery.msdn.microsoft.com/DF3F0C30-3D37-4E06-9EF8-3BFF3508BE31&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt; text-indent: -0.25in;"&gt;
&lt;span style="font-family: inherit;"&gt;·&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
  VS 2010 –&amp;nbsp;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/e5f41ad9-4edc-4912-bca3-91147db95b99"&gt;http://visualstudiogallery.msdn.microsoft.com/e5f41ad9-4edc-4912-bca3-91147db95b99&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;An extension
  for Visual studio that would minimize (collapse) all the projects&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Yes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style="height: 29.6pt; mso-yfti-irow: 5;"&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; height: 29.6pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="background-color: white;"&gt;ANTS Memory Profiler&amp;nbsp;&lt;/span&gt;&lt;span style="background-color: #e8eaec;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 29.6pt; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;a href="http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/"&gt;http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 29.6pt; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong&gt;&lt;span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial;"&gt;Find memory leaks in your .net
  application&lt;/span&gt;&lt;/strong&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 29.6pt; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;14 day trial&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 63.95pt;" valign="top" width="85"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;SQL formatter&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 289.85pt;" valign="top" width="386"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;a href="http://www.dpriver.com/pp/sqlformat.htm"&gt;http://www.dpriver.com/pp/sqlformat.htm&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 75.8pt;" valign="top" width="101"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;An online tool
  for formatting your SQL code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 49.2pt;" valign="top" width="66"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Yes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&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/7997402329705633660-2987638755073518934?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lx2yJWIMt6_nJm_lNybnvMlAqGE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lx2yJWIMt6_nJm_lNybnvMlAqGE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lx2yJWIMt6_nJm_lNybnvMlAqGE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lx2yJWIMt6_nJm_lNybnvMlAqGE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/O1mRtbj648w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/2987638755073518934/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/some-useful-tools-for-net-developers.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2987638755073518934?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2987638755073518934?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/O1mRtbj648w/some-useful-tools-for-net-developers.html" title="Some useful tools for .net developers" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/some-useful-tools-for-net-developers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QERHs4eCp7ImA9WhRaFE0.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-8594584214602825642</id><published>2012-02-15T17:43:00.002-05:00</published><updated>2012-02-16T10:15:05.530-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-16T10:15:05.530-05:00</app:edited><title>Last entered row SQL Server</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="font-family: inherit;"&gt;&amp;nbsp;These are the various choices you have to get the latest identity entered into a table in SQL server&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;div style="background-color: white; color: #333333; line-height: 19px; margin-bottom: 0.7em; margin-top: 0.7em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;
&lt;span style="font-family: inherit;"&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;SELECT @@IDENTITY&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #333333; line-height: 19px; margin-bottom: 0.7em; margin-top: 0.7em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;
&lt;span style="font-family: inherit;"&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;SELECT SCOPE_IDENTITY()&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #333333; line-height: 19px; margin-bottom: 0.7em; margin-top: 0.7em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;
&lt;span style="font-family: inherit;"&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;SELECT IDENT_CURRENT(‘tablename’)&lt;/strong&gt;&lt;/span&gt;&lt;br /&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;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&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;"&gt;The most often I personally use is&amp;nbsp;&lt;/span&gt;&lt;span style="background-color: white; 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;SELECT SCOPE_IDENTITY()&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong style="background-color: white; 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;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong style="background-color: white; 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;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #333333; line-height: 19px; margin-bottom: 0.7em; margin-top: 0.7em; 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;"&gt;&lt;span style="font-family: inherit;"&gt;I will defer to an excellent article from Pinal Dave for an explanation on each of these&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #333333; line-height: 19px; margin-bottom: 0.7em; margin-top: 0.7em; 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;"&gt;&lt;a href="http://blog.sqlauthority.com/2007/03/25/sql-server-identity-vs-scope_identity-vs-ident_current-retrieve-last-inserted-identity-of-record/"&gt;&lt;span style="font-family: inherit;"&gt;http://blog.sqlauthority.com/2007/03/25/sql-server-identity-vs-scope_identity-vs-ident_current-retrieve-last-inserted-identity-of-record/&lt;/span&gt;&lt;/a&gt;
&lt;/span&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/7997402329705633660-8594584214602825642?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xnR4UCHzKWi20xlMB239qp1bE2I/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xnR4UCHzKWi20xlMB239qp1bE2I/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xnR4UCHzKWi20xlMB239qp1bE2I/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xnR4UCHzKWi20xlMB239qp1bE2I/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/WrQxi3-jOXs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/8594584214602825642/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/last-entered-row-sql-server.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/8594584214602825642?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/8594584214602825642?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/WrQxi3-jOXs/last-entered-row-sql-server.html" title="Last entered row SQL Server" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/last-entered-row-sql-server.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQFR3o6fip7ImA9WhRaEUs.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-453720871938580979</id><published>2012-02-13T15:47:00.004-05:00</published><updated>2012-02-13T15:51:56.416-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-13T15:51:56.416-05:00</app:edited><title>System.CodeDom.Compiler Namespace ( with example)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span class="selflink"&gt;&lt;span style="font-family: inherit;"&gt;System.CodeDom.Compiler:&amp;nbsp;&amp;nbsp;This namespace lets you generate source code files on the fly (at runtime). It also lets you generate assemblies (dlls) from these generated source code at runtime.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="selflink"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="selflink"&gt;&lt;span style="font-family: inherit;"&gt;Note that it can only generate code in one of the four managed languages (C#, vb, Jscript, C++)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;Given below is a simple example that uses&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: inherit;"&gt;&lt;b&gt;&lt;span style="background-color: white; line-height: 17px;"&gt;CodeDomProvider&lt;/span&gt;&amp;nbsp;class&lt;/b&gt; in the&amp;nbsp;&lt;/span&gt;CodeD&lt;span style="font-family: inherit;"&gt;om.Compiler namespace.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.CodeDom.Compiler;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; ConsoleApplication5&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;CodeDomProvider&lt;/span&gt; provider;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt; language = &lt;span style="color: #a31515;"&gt;"c#"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
provider = &lt;span style="color: #2b91af;"&gt;CodeDomProvider&lt;/span&gt;.CreateProvider(language);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(provider.ToString());&lt;span style="color: green;"&gt;//Displays Microsoft.CSharp.CSharpCodeProvider&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(provider.FileExtension);&lt;span style="color: green;"&gt;//Displays cs &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;If you add a watch on&amp;nbsp;&lt;/o:p&gt;&lt;span style="color: #2b91af; font-family: Consolas; font-size: 9.5pt;"&gt;CodeDomProvider&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;.GetAllCompilerInfo()&lt;/span&gt;&amp;nbsp; this is what you see&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-uKo1AqVM1w0/TzlzfgEVtnI/AAAAAAAAAN0/M-uXK1zM22c/s1600/GetAllCompilerInfo.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-uKo1AqVM1w0/TzlzfgEVtnI/AAAAAAAAAN0/M-uXK1zM22c/s1600/GetAllCompilerInfo.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&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/7997402329705633660-453720871938580979?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wOOYy4qDqo7kYj2DYrTPV4iWpD4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wOOYy4qDqo7kYj2DYrTPV4iWpD4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wOOYy4qDqo7kYj2DYrTPV4iWpD4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wOOYy4qDqo7kYj2DYrTPV4iWpD4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/5vLlNUtv2h0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/453720871938580979/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/systemcodedomcompiler-namespace.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/453720871938580979?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/453720871938580979?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/5vLlNUtv2h0/systemcodedomcompiler-namespace.html" title="System.CodeDom.Compiler Namespace ( with example)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-uKo1AqVM1w0/TzlzfgEVtnI/AAAAAAAAAN0/M-uXK1zM22c/s72-c/GetAllCompilerInfo.JPG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/systemcodedomcompiler-namespace.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MARXk_cSp7ImA9WhRaF00.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-3075049566079606231</id><published>2012-02-11T19:20:00.003-05:00</published><updated>2012-02-19T21:37:24.749-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-19T21:37:24.749-05:00</app:edited><title>Compare C# and vb (C# vb difference)( C# vs vb)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="font-family: inherit;"&gt;I am not covering and syntax difference here. I am trying to list all the functional differences between the two. Let me know if you can think of any more (in the comments) , I will&amp;nbsp;include&amp;nbsp;it in here.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;/div&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;C#&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;VB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Was designed ground up specifically for the .net framework.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;VB was built as a successor of the pre existing VB. They tried to
  keep it syntactically as similar as possible to the VB prior to .net.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;You can write unmanaged code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;NA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;NA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;isNumeric() can be used to check if the value is numeric&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Namespace cannot be imported at the project level and has to be
  imported into every file using the “using” directive.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial;"&gt;Namespaces can be imported at the project level&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Multiline comments are possible ( /**/)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;NA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;For adding asp.net page events, in C# you have to lookup the signature of the page event and type it
  out (the &lt;span class="selflink"&gt;&lt;b&gt;AutoEventWireup&lt;/b&gt;&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&amp;nbsp; should
  be set to true)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;In asp.net when using vb, page events can be easily added thru the Visual Studio UI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&amp;nbsp;Besides the fact that vb makes things easier (which could qualify vb as&amp;nbsp;slightly&amp;nbsp;superior) , I have not seen any major functional differences between the two languages. However,&amp;nbsp;most of my C# friends believe C# is superior. Myself being a C# developer, as much as I'd like to believe that, I can't. In my opinion, the choice between C# and vb should purely depend on the in house&amp;nbsp;skill-set. If your associates are more comfortable in one of the languages, it makes more sense to go with that.&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&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/7997402329705633660-3075049566079606231?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZgDcWu_swayW7RlhQNWbjC7IiAM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZgDcWu_swayW7RlhQNWbjC7IiAM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZgDcWu_swayW7RlhQNWbjC7IiAM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZgDcWu_swayW7RlhQNWbjC7IiAM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/fo5j6T8aCL8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/3075049566079606231/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/compare-c-and-vb-vs-2010.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3075049566079606231?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3075049566079606231?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/fo5j6T8aCL8/compare-c-and-vb-vs-2010.html" title="Compare C# and vb (C# vb difference)( C# vs vb)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/compare-c-and-vb-vs-2010.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMGSX89cSp7ImA9WhRbGUw.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-4747979874710600524</id><published>2012-02-10T17:17:00.000-05:00</published><updated>2012-02-10T17:37:08.169-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-10T17:37:08.169-05:00</app:edited><title>bitmask (SQL server and bitmask)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
What is is a bitmask?&lt;br /&gt;
&lt;br /&gt;
Suppose you have a web page where you have a checkbox list (multiple check boxes). The user can select one or many of these check boxes. To keep a track of the checkboxes the user ticked, you can select from two popular options&lt;br /&gt;
&lt;br /&gt;
1&amp;gt; Have a boolean column in the database for each checkbox. (So if you have 10 check boxes, then 10 columns)&lt;br /&gt;
or&lt;br /&gt;
2&amp;gt;Have just one column that holds a value corresponding to the check boxes ticked.&lt;br /&gt;
&lt;br /&gt;
If you like option 2, then bitmask is your friend.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;An example explaining the concept of bitmask&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Suppose I have a webpage where the user has to select the fruits he/she likes. For each fruit he/she selects, I have assigned a binary value for that fruit. (Note that every binary position is assigned to one fruit)&lt;br /&gt;
&lt;br /&gt;
Apple: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;00001&lt;br /&gt;
Orange: &amp;nbsp; &amp;nbsp; &amp;nbsp;00010&lt;br /&gt;
Grapes: &amp;nbsp; &amp;nbsp; &amp;nbsp;00100&lt;br /&gt;
Mango: &amp;nbsp; &amp;nbsp; &amp;nbsp;01000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the user selects say apple and mango, then this is what I would do&lt;br /&gt;
&lt;br /&gt;
1&amp;gt;Add the two binary values&lt;br /&gt;
00001+01000=01001&lt;br /&gt;
&lt;br /&gt;
2&amp;gt;Convert to integer&lt;br /&gt;
binary&amp;nbsp;01001= decimal 9&lt;br /&gt;
&lt;br /&gt;
3&amp;gt;Save 9 in the database&lt;br /&gt;
&lt;br /&gt;
Note here that the column that saves a bitmask value in database is defined as an integer.&lt;br /&gt;
&lt;br /&gt;
I know at the first sight, it might seem like some information is lost in the process. But its not. Think of it like this, every position in the binary representation is reserved for one check box. So the binary representation of the stored value will have a 1 in the 10s position only if orange was selected. Try it out yourself.&lt;br /&gt;
&lt;br /&gt;
When you actually implement this in an application, you don't need to convert anything into binary. &amp;nbsp;What is explained above is the underlying concept. When you&amp;nbsp;implement, you directly use the integer values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Binary&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Decimal&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
10&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
2&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
100&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
4&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1000&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
8&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
10000&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
16&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
100000&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
32&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1000000&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
64&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;and so on.&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;When you use bitmask in SQL server, the bitwise AND (&amp;amp;) is a very useful feature.&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;Suppose I have a value 9 saved in the database. If I want to see if Mango was one of the selected checkboxes, I could use Bitwise and (&amp;amp;)&amp;nbsp;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: -webkit-auto;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;IF&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;(&lt;/span&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;
&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;(&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; 9&lt;span style="color: grey;"&gt;&amp;amp;&lt;/span&gt;8 &lt;span style="color: grey;"&gt;)&lt;/span&gt; &lt;span style="color: grey;"&gt;=&lt;/span&gt; 8 &lt;span style="color: grey;"&gt;)&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;BEGIN&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;PRINT&lt;/span&gt; &lt;span style="color: red;"&gt;'mango selected!'&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;END&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;ELSE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;BEGIN&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;PRINT&lt;/span&gt; &lt;span style="color: red;"&gt;' no mango selected.'&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;END&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
The statement&amp;nbsp;&lt;span style="font-family: 'Courier New'; font-size: 10pt; text-align: -webkit-auto;"&gt;9&lt;span style="color: grey;"&gt;&amp;amp;&lt;/span&gt;8&amp;nbsp;&lt;/span&gt;&amp;nbsp;does this&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
1&amp;gt;Convert both to binary&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
9 decimal =&amp;nbsp;1001 binary&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
8 decimal = 1000 binary&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
2&amp;gt; See which position matches between the two. In this case it is 1 in the thousands position&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
1000&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
3&amp;gt;Return the decimal of the common value&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
binary 1000= 8 decimal.&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: left;"&gt;
Therefore&amp;nbsp;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt; text-align: -webkit-auto;"&gt;(&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; text-align: -webkit-auto;"&gt;&amp;nbsp;9&lt;span style="color: grey;"&gt;&amp;amp;&lt;/span&gt;8&amp;nbsp;&lt;span style="color: grey;"&gt;)&amp;nbsp;&lt;/span&gt;&lt;/span&gt;returns 8.&amp;nbsp;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&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/7997402329705633660-4747979874710600524?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/izvs3vwbx0iS7-a-CFMTg9M3sJk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/izvs3vwbx0iS7-a-CFMTg9M3sJk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/izvs3vwbx0iS7-a-CFMTg9M3sJk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/izvs3vwbx0iS7-a-CFMTg9M3sJk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/CSXqShfqpcc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/4747979874710600524/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/bitmask-sql-server-and-bitmask.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4747979874710600524?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4747979874710600524?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/CSXqShfqpcc/bitmask-sql-server-and-bitmask.html" title="bitmask (SQL server and bitmask)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/bitmask-sql-server-and-bitmask.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8FQ3w4fyp7ImA9WhRbF04.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-8071999125453479081</id><published>2012-02-08T14:47:00.001-05:00</published><updated>2012-02-08T15:26:52.237-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-08T15:26:52.237-05:00</app:edited><title>sql stored procedure output parameters</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="font-family: inherit; font-size: large; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;span style="font-family: inherit; font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Stored Procedure with output parameter&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style="color: blue; font-family: inherit; font-size: x-small; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;CREATE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;span style="color: blue;"&gt;PROCEDURE&lt;/span&gt; [dbo]&lt;span style="color: grey;"&gt;.&lt;/span&gt;[usp_OutPara]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@x &lt;span style="color: blue;"&gt;int&lt;/span&gt;
&lt;span style="color: blue;"&gt;output&lt;/span&gt;&lt;span style="color: grey;"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@s &lt;span style="color: blue;"&gt;varchar&lt;/span&gt;&lt;span style="color: grey;"&gt;(&lt;/span&gt;&lt;span style="color: magenta;"&gt;max&lt;/span&gt;&lt;span style="color: grey;"&gt;)&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;AS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;BEGIN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @x&lt;span style="color: grey;"&gt;=&lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;select&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @s&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;END&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-family: inherit; font-size: x-small; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit; font-size: x-small; text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit; font-size: large;"&gt;&lt;b&gt;&lt;u&gt;Execute the stored proc and read the output variable&lt;/u&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit; font-size: large;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;DECLARE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @x &lt;span style="color: blue;"&gt;INT&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;DECLARE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @x2 &lt;span style="color: blue;"&gt;INT&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;DECLARE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @s &lt;span style="color: blue;"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: grey;"&gt;(&lt;/span&gt;&lt;span style="color: magenta;"&gt;MAX&lt;/span&gt;&lt;span style="color: grey;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @s&lt;span style="color: grey;"&gt;=&lt;/span&gt;&lt;span style="color: red;"&gt;'hello world'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;EXEC&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
Usp_outpara&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@x&lt;span style="color: grey;"&gt;=&lt;/span&gt;@x2
&lt;span style="color: blue;"&gt;OUTPUT&lt;/span&gt;&lt;span style="color: grey;"&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp; @s&lt;span style="color: grey;"&gt;=&lt;/span&gt;@s&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;SELECT&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt; @x2 &lt;span style="color: green;"&gt;--Displays 1&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;span style="font-family: inherit; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;span style="font-family: inherit;"&gt;To read the output variables in asp.net check out&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;a href="http://dotnetanalysis.blogspot.com/2011/09/adonet-with-examples.html"&gt;&lt;span style="font-family: inherit;"&gt;http://dotnetanalysis.blogspot.com/2011/09/adonet-with-examples.html&lt;/span&gt;&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/7997402329705633660-8071999125453479081?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/o37EXPyl1yxzVKV3CDY0H5PZrJo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/o37EXPyl1yxzVKV3CDY0H5PZrJo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/o37EXPyl1yxzVKV3CDY0H5PZrJo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/o37EXPyl1yxzVKV3CDY0H5PZrJo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/flDQRy0rF7I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/8071999125453479081/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/sql-stored-procedure-output-parameters.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/8071999125453479081?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/8071999125453479081?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/flDQRy0rF7I/sql-stored-procedure-output-parameters.html" title="sql stored procedure output parameters" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/sql-stored-procedure-output-parameters.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MHSXo4fCp7ImA9WhRbEU8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-946120212643576514</id><published>2012-02-01T15:46:00.000-05:00</published><updated>2012-02-01T15:50:38.434-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-01T15:50:38.434-05:00</app:edited><title>Unable to start debugging on the web server. An unexpected DCOM error occurred while trying to automatically attach to the remote web server. Try manually attaching to the remote web server using the 'Attach To Process' dialog.</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
This is what I did&lt;br /&gt;
&lt;br /&gt;
1&amp;gt;Click on website in IIS 7.5. On the right side of the screen under Actions, click on "Basic settings". That opens up a pop up as shown below.&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/-aKHULmoS61s/TymkBXpg1nI/AAAAAAAAANc/2sW25FkuyXQ/s1600/Capture.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-aKHULmoS61s/TymkBXpg1nI/AAAAAAAAANc/2sW25FkuyXQ/s1600/Capture.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2&amp;gt;Click Connect as in the pop up window shown above.&lt;br /&gt;
&lt;br /&gt;
3&amp;gt;Select Application user&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-QqpJF8ErAIk/TymkevTq-uI/AAAAAAAAANk/cDZUgjLVccg/s1600/Capture.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-QqpJF8ErAIk/TymkevTq-uI/AAAAAAAAANk/cDZUgjLVccg/s1600/Capture.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&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/7997402329705633660-946120212643576514?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/x4Hs8tOuEWcVZYwRougY7E7ojjY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/x4Hs8tOuEWcVZYwRougY7E7ojjY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/x4Hs8tOuEWcVZYwRougY7E7ojjY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/x4Hs8tOuEWcVZYwRougY7E7ojjY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/alUH2O_ZYG8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/946120212643576514/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/unable-to-start-debugging-on-web-server_01.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/946120212643576514?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/946120212643576514?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/alUH2O_ZYG8/unable-to-start-debugging-on-web-server_01.html" title="Unable to start debugging on the web server. An unexpected DCOM error occurred while trying to automatically attach to the remote web server. Try manually attaching to the remote web server using the 'Attach To Process' dialog." /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-aKHULmoS61s/TymkBXpg1nI/AAAAAAAAANc/2sW25FkuyXQ/s72-c/Capture.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/unable-to-start-debugging-on-web-server_01.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEBSXgyfip7ImA9WhRbEU8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-6588708040753229065</id><published>2012-02-01T13:23:00.002-05:00</published><updated>2012-02-01T13:24:18.696-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-01T13:24:18.696-05:00</app:edited><title>Unable to start debugging on the web server. The IIS worker process for the launched URL is not currently running. (IIS 7.5)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Enabling windows authentication on the website worked for me.&lt;br /&gt;
&lt;br /&gt;
1&amp;gt;In IIS manager click on the website to see all the features&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-Rzj0yO7_2L0/TymC4vjbQhI/AAAAAAAAANM/GD_PHSMkY3E/s1600/FeaturesView.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://2.bp.blogspot.com/-Rzj0yO7_2L0/TymC4vjbQhI/AAAAAAAAANM/GD_PHSMkY3E/s640/FeaturesView.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
2&amp;gt;Double click on authentication&lt;br /&gt;
&lt;br /&gt;
3&amp;gt;Enable Windows Aunthentication&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-U2l23LmNtRY/TymDCKn-_nI/AAAAAAAAANU/Tjpw-i26Ukk/s1600/Capture.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="197" src="http://3.bp.blogspot.com/-U2l23LmNtRY/TymDCKn-_nI/AAAAAAAAANU/Tjpw-i26Ukk/s640/Capture.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&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/7997402329705633660-6588708040753229065?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4M0gPEI_j7FJK_tgHiIHjL7FmWk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4M0gPEI_j7FJK_tgHiIHjL7FmWk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4M0gPEI_j7FJK_tgHiIHjL7FmWk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4M0gPEI_j7FJK_tgHiIHjL7FmWk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/r7nT8XWnlek" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/6588708040753229065/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/02/unable-to-start-debugging-on-web-server.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6588708040753229065?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6588708040753229065?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/r7nT8XWnlek/unable-to-start-debugging-on-web-server.html" title="Unable to start debugging on the web server. The IIS worker process for the launched URL is not currently running. (IIS 7.5)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-Rzj0yO7_2L0/TymC4vjbQhI/AAAAAAAAANM/GD_PHSMkY3E/s72-c/FeaturesView.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/02/unable-to-start-debugging-on-web-server.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAHSXo6fyp7ImA9WhRaFUU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-4926388621142853345</id><published>2012-01-29T22:41:00.003-05:00</published><updated>2012-02-18T11:32:18.417-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-18T11:32:18.417-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Normalization" /><category scheme="http://www.blogger.com/atom/ns#" term="SQL SERVER" /><title>database normalization examples (SQL Server)(normalization in database)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Normalizing a database means laying out the tables in an efficient way with the main focus being on preserving the integrity of data.&lt;/b&gt; It is easier to explain with an example, what normalization is all about.&lt;br /&gt;
&lt;br /&gt;
I once worked on this project where the developers had laid out this database for a website which had these two tables.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-0L-Hdf73sRY/TyYS-9J_WcI/AAAAAAAAANE/tRyImg-jet0/s1600/deNormalized.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-0L-Hdf73sRY/TyYS-9J_WcI/AAAAAAAAANE/tRyImg-jet0/s1600/deNormalized.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Bands table held the userids of the users who belonged to the band. &amp;nbsp;Any band member could log in to the website and add a new member to his band. Once a new member was added to a band, all the members of that band were to receive an email. The developers, to make their job easier, added an email column to the band. So every time they copy over a userID to the bands table, they would also copy over the email address of that user. This website ran okay for a short time, but after a few weeks users started complaining of not receiving emails when members were added to their bands. A&amp;nbsp;little&amp;nbsp;investigation revealed that these users who had complained of not getting emails had changed their email addresses.&lt;br /&gt;
Can you guess what might have happened? When the users updated their email addresses thru the website, their address got updated only in the users table, the reason being that when this page was built, the Bands table did not exist. The bands was a feature that was added later on into the system.&lt;br /&gt;
&lt;br /&gt;
One of the main goals of&amp;nbsp;normalization&amp;nbsp;is to avoid repetition of data. If data is repeated, it can lead to inconsistent data as this clearly evident in the above example (email address is inconsistent, two tables give two separate email addresses for the same individual).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are 7 forms of Normalization.&amp;nbsp;The seven forms of Normalization are&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="text-align: left;"&gt;
&lt;li&gt;First Normal Form&lt;/li&gt;
&lt;li&gt;Second Normal Form&lt;/li&gt;
&lt;li&gt;Third Normal Form&lt;/li&gt;
&lt;li&gt;Boyce-Codd Normal Form&lt;/li&gt;
&lt;li&gt;Fourth Normal Form&lt;/li&gt;
&lt;li&gt;Fifth Normal Form&lt;/li&gt;
&lt;li&gt;Domain/Key Normal Form&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
Many database designers normalize OLTP databases only up to the 3rd Normal form (&lt;span style="font-size: x-small;"&gt;and reporting OLAP databases up to 2nd Normal Form&lt;/span&gt;). The 3rd Normal form reduces redundancy to a reasonable level without complicating the design too much.&amp;nbsp;In this article we will start with a Denormalized database, then follow the rules and normalize it to the third normal form.&lt;br /&gt;
&lt;br /&gt;
(Before we proceed , if you are unfamiliar with SQL keys, please check out this article&lt;br /&gt;
&amp;nbsp;&lt;a href="http://dotnetanalysis.blogspot.com/2012/01/sql-key-super-key-candidate-key-primary.html"&gt;http://dotnetanalysis.blogspot.com/2012/01/sql-key-super-key-candidate-key-primary.html&lt;/a&gt;)&lt;br /&gt;
&lt;br /&gt;
Consider the table below. This database stores data for products purchased by people online. This database &amp;nbsp;also stores their employer information. Lets see how to normalize this database to the third normal form.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 62.75pt;" valign="top" width="84"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 60.6pt;" valign="top" width="81"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;UserName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;Product1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;Product2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 74.85pt;" valign="top" width="100"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;MoreProducts&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 80.0pt;" valign="top" width="107"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;EmployerName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 89.2pt;" valign="top" width="119"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;EmployerAddress&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 62.75pt;" valign="top" width="84"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 60.6pt;" valign="top" width="81"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Amy&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
M&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 74.85pt;" valign="top" width="100"&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 80.0pt;" valign="top" width="107"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 89.2pt;" valign="top" width="119"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 62.75pt;" valign="top" width="84"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 60.6pt;" valign="top" width="81"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
A&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
B&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 74.85pt;" valign="top" width="100"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
C,D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 80.0pt;" valign="top" width="107"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 89.2pt;" valign="top" width="119"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 62.75pt;" valign="top" width="84"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 60.6pt;" valign="top" width="81"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Raj&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 55.7pt;" valign="top" width="74"&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 74.85pt;" valign="top" width="100"&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 80.0pt;" valign="top" width="107"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 89.2pt;" valign="top" width="119"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;First Normal Form:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;You can only have one value in a column&lt;/li&gt;
&lt;li&gt;You should not create multiple columns for a one to many relationship.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
There are more rules to the first normal form (such as two rows cannot be identical etc) which are automatically enforced by the SQL server. Hence I won't be listing them here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;UserName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;EmployerName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;EmployerAddress&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white;"&gt;Product&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Amy&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
M&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
A&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
B&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
C&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Raj&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.75pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 95.8pt;" valign="top" width="128"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;Second Normal Form:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;The table is in First Normal Form&lt;/li&gt;
&lt;li&gt;All the non primary key columns in the table should depend on the entire primary key&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;UserName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;EmployerName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;EmployerAddress&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Amy&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Raj&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 119.7pt;" valign="top" width="160"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;ProductName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
M&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
A&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
B&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
C&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
D&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;span style="background-color: white; font-family: 'Droid Sans'; font-size: 15px; line-height: 21px;"&gt;For non transactional (reporting) applications, 2nd Normal form is good enough.&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;span style="font-size: large;"&gt;&lt;b&gt;Third Normal Form&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&amp;nbsp;Database is in Second Normal form&lt;/li&gt;
&lt;li&gt;There are no transitive dependencies (That is every non primary key is dependent &lt;b&gt;&lt;span style="font-size: large;"&gt;only &lt;/span&gt;&lt;/b&gt;on the primary key.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;UserName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Amy&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Kevin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Raj&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;EmployerName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;EmployerAddress&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
1 California drive&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
22nd Street Sanfrancisco&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;SSN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-background-themecolor: text1; mso-background-themetint: 128; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: white;"&gt;EmployerName&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
332345432&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
666666666&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Facebook&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
919919919&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
Google&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
When a database is in the third normal form, there is no redundancy (no repetition of data).&lt;br /&gt;
&lt;br /&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/7997402329705633660-4926388621142853345?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/y2VVXW8tbUXHSVrcNruxOQbX3vA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y2VVXW8tbUXHSVrcNruxOQbX3vA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/y2VVXW8tbUXHSVrcNruxOQbX3vA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y2VVXW8tbUXHSVrcNruxOQbX3vA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/bQLgO7wuzdQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/4926388621142853345/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/database-normalization-sql-server.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4926388621142853345?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4926388621142853345?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/bQLgO7wuzdQ/database-normalization-sql-server.html" title="database normalization examples (SQL Server)(normalization in database)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-0L-Hdf73sRY/TyYS-9J_WcI/AAAAAAAAANE/tRyImg-jet0/s72-c/deNormalized.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/database-normalization-sql-server.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MNRXkyfSp7ImA9WhRUGUs.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-5956285126445488338</id><published>2012-01-26T11:45:00.003-05:00</published><updated>2012-01-30T17:11:34.795-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-30T17:11:34.795-05:00</app:edited><title>robocopy working example (copy files command prompt)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="background-color: black;"&gt;&lt;span style="color: white;"&gt;ROBOCOPY "C:\source\config\dev" &amp;nbsp; "C:\desti\config\Beta" &amp;nbsp;connectionStrings.config&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The console command above copies the file&amp;nbsp;connectionStrings.config&lt;br /&gt;
from&amp;nbsp;C:\source\config\dev&lt;br /&gt;
to &amp;nbsp; &amp;nbsp;&amp;nbsp;C:\desti\config\Beta&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7997402329705633660-5956285126445488338?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qKwH2QcwsDiY-lsNsIsu0PsLlho/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qKwH2QcwsDiY-lsNsIsu0PsLlho/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qKwH2QcwsDiY-lsNsIsu0PsLlho/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qKwH2QcwsDiY-lsNsIsu0PsLlho/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/JhKt3i-BG8c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/5956285126445488338/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/robocopy-working-example.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5956285126445488338?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5956285126445488338?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/JhKt3i-BG8c/robocopy-working-example.html" title="robocopy working example (copy files command prompt)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/robocopy-working-example.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEEMQXc7eCp7ImA9WhRbFk8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-645823269126373971</id><published>2012-01-21T18:04:00.000-05:00</published><updated>2012-02-07T09:58:00.900-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-07T09:58:00.900-05:00</app:edited><title>SQL key (Super key, Candidate key, Primary key, unique key, Composite key, foreign key)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;/div&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 126.85pt;" valign="bottom" width="169"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;SocialSecurityNumber&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 83.05pt;" valign="bottom" width="111"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;Name&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 88.8pt;" valign="bottom" width="118"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;Address&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 87.45pt;" valign="bottom" width="117"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;BirthDay&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-left: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 92.65pt;" valign="bottom" width="124"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;TaxIDNumber&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 126.85pt;" valign="bottom" width="169"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;818764259&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 83.05pt;" valign="bottom" width="111"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;John&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 88.8pt;" valign="bottom" width="118"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;22 washington st&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 87.45pt;" valign="bottom" width="117"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;1/3/1972&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 92.65pt;" valign="bottom" width="124"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;837650987&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 126.85pt;" valign="bottom" width="169"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;517881756&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 83.05pt;" valign="bottom" width="111"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Raj&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 88.8pt;" valign="bottom" width="118"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;1 boston road&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 87.45pt;" valign="bottom" width="117"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;6/9/1964&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 92.65pt;" valign="bottom" width="124"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;767354174&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 126.85pt;" valign="bottom" width="169"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;788876566&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 83.05pt;" valign="bottom" width="111"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;Janet&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 88.8pt;" valign="bottom" width="118"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;23 avenue NYC&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 87.45pt;" valign="bottom" width="117"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;4/15/1985&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 92.65pt;" valign="bottom" width="124"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;939635252&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 126.85pt;" valign="bottom" width="169"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;748209944&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 83.05pt;" valign="bottom" width="111"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;Janet&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 88.8pt;" valign="bottom" width="118"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;23 avenue NYC&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 87.45pt;" valign="bottom" width="117"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;4/15/1980&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 92.65pt;" valign="bottom" width="124"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="background-color: white;"&gt;643228844&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b&gt;&lt;span style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Uniquely identifying a row&lt;/span&gt; means being able to pin point to one row&lt;/span&gt;.&lt;/b&gt; For example suppose I need you to delete the fourth row, if I tell you, &amp;nbsp;delete the row where the name is Janet. There are two such rows, so that means I cannot uniquely identify a row (or pin point a row) with the name alone.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: inherit;"&gt;But if I tell you delete the row where Name is Janet , address is&amp;nbsp;23 avenue NYC and birth day is&amp;nbsp;4/15/1980. Then you will delete the correct row. That means a combination of Name,Address and Birthday, uniquely identifies a row.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;(You can also uniquely identify a row with&amp;nbsp;&lt;span style="text-align: -webkit-auto;"&gt;SocialSecurityNumber or&amp;nbsp;&lt;/span&gt;&lt;span style="text-align: -webkit-auto;"&gt;TaxIDNumber )&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;span style="text-align: -webkit-auto;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Super &amp;nbsp;key:&lt;/span&gt; &amp;nbsp;A combination of columns that can uniquely identify
a row in a table. A super key can have more columns than it needs to uniquely
identify a row.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&amp;nbsp;For example in the
above table [SocialSecurityNumber+
Name+Birthday] is a super key. Note here that SocialSecurityNumber
by itself can uniquely identify a row. Name and Birthday are extra &amp;nbsp;columns that are not required to uniquely
identify a row.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Candidate &amp;nbsp;key:&lt;/span&gt; &amp;nbsp;A minimal super key. &amp;nbsp;&amp;nbsp;(A sub set of super key, where if you
remove even one column, you cannot identify a row uniquely any more)&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;Assume that a particular
address you &lt;b&gt;cannot&lt;/b&gt; have two
individuals with the same name AND date of birth. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;In the example above SocialSecurityNumber, &amp;nbsp;TaxIDNumber
and the combination [Name+Addresss+ Birthday] are all Candidate keys. &amp;nbsp;But if you remove Birthday from [Name+Addresss+
Birthday] then it is not a candidate key anymore.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Primary key:&lt;/span&gt; &amp;nbsp;The main candidate key in a table. (The
main column or combination of columns that uniquely identifies a row).&lt;/b&gt; In the
above example,&amp;nbsp; SocialSecurityNumber
is the primary key.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;Note that when you set a
column as a primary key in SQL server, it also automatically sets that column
(or the combination of columns) as a “clustered index”. But if you want, you can
remove the clustered index on the primary key. It is not mandatory to have the
primary key as the clustered index.&lt;b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Unique Key:&lt;/span&gt; Unique is practically (but not&amp;nbsp;theoretically) the same as superkey. Unique key is a&amp;nbsp;constraint&amp;nbsp;that you put on a table where you want to ensure that the value is not repeated between two rows.&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;For example, in my SQL database table I want to make sure that no two rows have the same&amp;nbsp;&lt;span style="text-align: -webkit-auto;"&gt;TaxIDNumber. To do that in SQL Server, I will right click on the table--&amp;gt;Design&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit;"&gt;In the new window that opens up, I will right click the table--&amp;gt;Indexes/Keys. Click Add. Then make the selections as shown in the image below.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-L1dHyKFOAhw/TxtD45NGXyI/AAAAAAAAAMk/N1VI-P4aBWs/s1600/UniqueKey.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-L1dHyKFOAhw/TxtD45NGXyI/AAAAAAAAAMk/N1VI-P4aBWs/s1600/UniqueKey.PNG" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="text-align: -webkit-auto;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;Note here that you can set a unique key on a combination of columns. You can also set multiple unique keys in a table.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white; font-family: inherit;"&gt;&lt;span style="color: #3d85c6;"&gt;&lt;b&gt;Difference between primary and unique key:&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="background-color: white; font-family: inherit;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; mso-padding-alt: 0in 0in 0in 0in; mso-yfti-tbllook: 1184;"&gt;
 &lt;tbody&gt;
&lt;tr&gt;
  &lt;td style="background: #7F7F7F; border: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white; font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;Primary key constraint&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="background: #7F7F7F; border-left: none; border: solid windowtext 1.0pt; mso-border-left-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;b&gt;&lt;span style="color: white; font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;Unique key constraint&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;A table can have only one primary
  key.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;A table can have multiple unique
  keys.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;Doesn’t allow null in any of the
  columns that are a part of the primary key.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;Allows nulls in all the columns
  that are a part of the unique key constraint.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr&gt;
  &lt;td style="border-top: none; border: solid windowtext 1.0pt; mso-border-top-alt: solid windowtext 1.0pt; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;By default a clustered index is
  created on the column(s) that you set the primary key on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;(This index can be dropped later,
  it is not mandatory)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style="border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; padding: 0in 5.4pt 0in 5.4pt; width: 239.4pt;" valign="top" width="319"&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;By default a non clustered index
  is created on the column(s) that you set the Unique &amp;nbsp;key on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Times New Roman', serif; font-size: 12pt;"&gt;(This index can be dropped later,
  it is not mandatory)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;&lt;span style="color: #3d85c6;"&gt;Composite key (Compound key): &lt;/span&gt;A key that includes more than one column.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #3d85c6; font-family: inherit;"&gt;&lt;b style="background-color: white;"&gt;Foreign key constraint:&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;span style="background-color: white;"&gt;This is more easily explained with an example. Consider the tables shown below.&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-BGXuPTmjjgs/TxyLCxhZExI/AAAAAAAAAMs/w0z6ceARjYY/s1600/foreignKey.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-BGXuPTmjjgs/TxyLCxhZExI/AAAAAAAAAMs/w0z6ceARjYY/s1600/foreignKey.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style="background-color: white;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: yellow; font-family: inherit;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
The table Students hold the roll numbers for each student. The grade table holds a grade for each roll number. &amp;nbsp;To make sure&amp;nbsp;&amp;nbsp;a grade for a roll number should not exist in the Grade table, if that roll number is not present in the students table, we will set a foreign key as shown below. With a foreign key set, sql server will not allow the entry of a roll number in the Grades table, unless that roll number exists in the Students table.&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/-i9qe81fboxY/TxyL-Q6WvBI/AAAAAAAAAM0/_oZ_tS_tFNE/s1600/foreignKeys.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-i9qe81fboxY/TxyL-Q6WvBI/AAAAAAAAAM0/_oZ_tS_tFNE/s1600/foreignKeys.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note here that rollNumber has to be defined as a primary or uniqe key in the students table for this foreign key to be possible.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Further Reading:&lt;br /&gt;
Database Normalization :&lt;a href="http://dotnetanalysis.blogspot.com/2012/01/database-normalization-sql-server.html"&gt;http://dotnetanalysis.blogspot.com/2012/01/database-normalization-sql-server.html&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/7997402329705633660-645823269126373971?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/luR8dPj5QvxAHE4Sk0EX6cxURdg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/luR8dPj5QvxAHE4Sk0EX6cxURdg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/luR8dPj5QvxAHE4Sk0EX6cxURdg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/luR8dPj5QvxAHE4Sk0EX6cxURdg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/7gAa4bVTGPc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/645823269126373971/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/sql-key-super-key-candidate-key-primary.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/645823269126373971?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/645823269126373971?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/7gAa4bVTGPc/sql-key-super-key-candidate-key-primary.html" title="SQL key (Super key, Candidate key, Primary key, unique key, Composite key, foreign key)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-L1dHyKFOAhw/TxtD45NGXyI/AAAAAAAAAMk/N1VI-P4aBWs/s72-c/UniqueKey.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/sql-key-super-key-candidate-key-primary.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UFRXY-eSp7ImA9WhRVGUw.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-2224393604371613886</id><published>2012-01-18T15:39:00.002-05:00</published><updated>2012-01-18T15:40:14.851-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-18T15:40:14.851-05:00</app:edited><title>how to read uncommitted data in sql server</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Example&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="background-color: yellow; color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&lt;span style="background-color: yellow;"&gt; &lt;span style="color: blue;"&gt;transaction&lt;/span&gt; &lt;span style="color: blue;"&gt;isolation&lt;/span&gt;
&lt;span style="color: blue;"&gt;level&lt;/span&gt; &lt;span style="color: blue;"&gt;read&lt;/span&gt; &lt;/span&gt;&lt;span style="color: blue;"&gt;&lt;span style="background-color: yellow;"&gt;uncommitted&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;select&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt; &lt;span style="color: grey;"&gt;*&lt;/span&gt; &lt;span style="color: blue;"&gt;from&lt;/span&gt; tblStudents&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;(The text highlighted in yellow prompts SQL server to return uncommitted records)&lt;/span&gt;&lt;/div&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/7997402329705633660-2224393604371613886?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KvsrD4QtpWnpCVHVdK_oNR4zUJw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KvsrD4QtpWnpCVHVdK_oNR4zUJw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KvsrD4QtpWnpCVHVdK_oNR4zUJw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KvsrD4QtpWnpCVHVdK_oNR4zUJw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/WNK4f2RcwIo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/2224393604371613886/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/how-to-read-uncommitted-data-in-sql.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2224393604371613886?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2224393604371613886?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/WNK4f2RcwIo/how-to-read-uncommitted-data-in-sql.html" title="how to read uncommitted data in sql server" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/how-to-read-uncommitted-data-in-sql.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEUEQHg5cCp7ImA9WhRVGE8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-5812139768196278711</id><published>2012-01-17T13:38:00.000-05:00</published><updated>2012-01-17T13:50:01.628-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-17T13:50:01.628-05:00</app:edited><title>Give user read permission to all databases in SQL server ( SQL server read only permission)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
To give a user "read only" permissions to a database, where the user can view everything and modify nothing, he/she needs two permissions,&amp;nbsp;db_datareader and&amp;nbsp;VIEW DEFINITION.&lt;br /&gt;
&lt;br /&gt;
In the script below replace &amp;nbsp;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 13px;"&gt;myUserName&lt;/span&gt;&amp;nbsp;with the username of the user that you want to give permissions to all the databases in SQL server. On running the script below, this user will get permission to view all tables, stored procedures, functions etc. But would be able to modify none.&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;declare&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @username &lt;span style="color: blue;"&gt;nvarchar&lt;/span&gt;&lt;span style="color: grey;"&gt;(&lt;/span&gt;&lt;span style="color: magenta;"&gt;max&lt;/span&gt;&lt;span style="color: grey;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;DECLARE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
@queryForServer &lt;span style="color: blue;"&gt;nvarchar&lt;/span&gt;&lt;span style="color: grey;"&gt;(&lt;/span&gt;&lt;span style="color: magenta;"&gt;max&lt;/span&gt;&lt;span style="color: grey;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;DECLARE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
@queryForEachDB &lt;span style="color: blue;"&gt;nvarchar&lt;/span&gt;&lt;span style="color: grey;"&gt;(&lt;/span&gt;&lt;span style="color: magenta;"&gt;max&lt;/span&gt;&lt;span style="color: grey;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;/********************************/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;/*ONLY VARIABLE
TO BE SET*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;/********************************/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; @username&lt;span style="color: grey;"&gt;=&lt;/span&gt;&lt;span style="color: red;"&gt;'[myUserName]'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;/********************************/&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
@queryForServer&lt;span style="color: grey;"&gt;=&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;IF&amp;nbsp; NOT EXISTS (SELECT * FROM
sys.server_principals WHERE name = N'''&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;''')&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;BEGIN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;CREATE LOGIN '&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;' FROM WINDOWS WITH
DEFAULT_DATABASE=[Master], DEFAULT_LANGUAGE=[us_english]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;END&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
@queryForEachDB &lt;span style="color: grey;"&gt;=&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&lt;span style="color: red;"&gt;'use ? &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;IF&amp;nbsp; EXISTS (SELECT * FROM sys.database_principals
WHERE name = N'''&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;''')&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;BEGIN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;DROP USER '&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;END&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;CREATE USER '&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;' FOR LOGIN '&lt;/span&gt;&lt;span style="color: grey;"&gt;+&lt;/span&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;GRANT VIEW
DEFINITION to&amp;nbsp; '&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;' &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;EXEC
sp_addrolemember N''db_datareader'', N'''&lt;/span&gt;&lt;span style="color: grey; font-family: 'Courier New'; font-size: 10pt;"&gt;+&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;@username&lt;span style="color: grey;"&gt;+&lt;/span&gt;&lt;span style="color: red;"&gt;'''&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: red; font-family: 'Courier New'; font-size: 10pt;"&gt;'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;--If not exists
add user at Server Level&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;EXECUTE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;span style="color: maroon;"&gt;sp_executesql&lt;/span&gt;&lt;span style="color: blue;"&gt; &lt;/span&gt;@queryForServer&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;--Add user to
each database with datareader and view definition permission&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;EXECUTE&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; &lt;span style="color: maroon;"&gt;sp_msforeachdb&lt;/span&gt;&lt;span style="color: blue;"&gt; &lt;/span&gt;@queryForEachDB&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&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/7997402329705633660-5812139768196278711?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MfRxsU9PICn0TRK9dgOgQ8Ztx3s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MfRxsU9PICn0TRK9dgOgQ8Ztx3s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MfRxsU9PICn0TRK9dgOgQ8Ztx3s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MfRxsU9PICn0TRK9dgOgQ8Ztx3s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/Mc1N1tXo3D0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/5812139768196278711/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/give-user-read-permission-to-all.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5812139768196278711?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5812139768196278711?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/Mc1N1tXo3D0/give-user-read-permission-to-all.html" title="Give user read permission to all databases in SQL server ( SQL server read only permission)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/give-user-read-permission-to-all.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAFR3w4eip7ImA9WhRVFEU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-4177455857296259567</id><published>2012-01-13T15:31:00.003-05:00</published><updated>2012-01-13T15:31:56.232-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-13T15:31:56.232-05:00</app:edited><title>How to give an active directory group access to SQL server? (AD group SQL server)</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="color: #3d85c6; font-size: large;"&gt;Verify the members in the active directory group&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
First make sure that the AD group doesn't have any member that you don't want to give access to your SQL server by running this command on the command prompt.&lt;br /&gt;
&lt;br /&gt;
NET GROUP &lt;i&gt;myGroupName &lt;/i&gt;/domain&lt;br /&gt;
&lt;br /&gt;
This above command will give you all the members in the active directory group&amp;nbsp;&lt;i&gt;myGroupName .&lt;/i&gt;(only replace&amp;nbsp;&lt;i&gt;myGroupName ,&lt;/i&gt;&amp;nbsp;rest of the command remains as is)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #3d85c6; font-size: large;"&gt;Give the AD Group login permission to SQL server&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"&gt;CREATE&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"&gt; &lt;span style="color: blue;"&gt;LOGIN&lt;/span&gt; [myGroupName] &lt;span style="color: blue;"&gt;FROM&lt;/span&gt;
&lt;span style="color: blue;"&gt;WINDOWS&lt;/span&gt; &lt;span style="color: blue;"&gt;WITH&lt;/span&gt; &lt;span style="color: blue;"&gt;DEFAULT_DATABASE&lt;/span&gt;&lt;span style="color: grey;"&gt;=&lt;/span&gt;[master]&lt;span style="color: grey;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;DEFAULT_LANGUAGE&lt;/span&gt;&lt;span style="color: grey;"&gt;=&lt;/span&gt;[us_english]&lt;/span&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/7997402329705633660-4177455857296259567?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dYuu02EWv6nTSs34a451diN1mqQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dYuu02EWv6nTSs34a451diN1mqQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dYuu02EWv6nTSs34a451diN1mqQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dYuu02EWv6nTSs34a451diN1mqQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/AnTlD_7Le_8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/4177455857296259567/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/how-to-give-active-directory-group.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4177455857296259567?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/4177455857296259567?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/AnTlD_7Le_8/how-to-give-active-directory-group.html" title="How to give an active directory group access to SQL server? (AD group SQL server)" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/how-to-give-active-directory-group.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEEQXk8cSp7ImA9WhRUGUk.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-2494752599226312512</id><published>2012-01-05T17:51:00.002-05:00</published><updated>2012-01-30T11:23:20.779-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-30T11:23:20.779-05:00</app:edited><title>asp.net get paths/urls</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;b&gt;Get absolute path of a file :&lt;/b&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;string&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;
absoluteFilePath = Server.MapPath(&lt;span style="color: #a31515;"&gt;"~/Products.xml"&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;&lt;span style="line-height: 14px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;b&gt;Get Complete url of the current page:&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;string&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;
completeUrl = &lt;span style="color: #2b91af;"&gt;HttpContext&lt;/span&gt;.Current.Request.Url.AbsoluteUri;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;// "http://localhost:35876/Default.aspx"&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;&lt;span style="line-height: 14px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;b&gt;Get the domain name (host header):&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;string&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;domainName&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;= &lt;span style="color: #2b91af;"&gt;HttpContext&lt;/span&gt;.Current.Request.Url.Host;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;OR&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;string&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;domainName&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;=&lt;/span&gt;&lt;span style="color: #2b91af; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"&gt;HttpContext&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10.0pt; line-height: 115%; mso-no-proof: yes;"&gt;.Current.Request.Headers[&lt;span style="color: #a31515;"&gt;"Host"&lt;/span&gt;]&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;span style="color: green;"&gt;// "localhost"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;span style="color: green;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;b&gt;Get Relative path of the current page (relative to the root) :&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt; line-height: 14px;"&gt;string&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 14px;"&gt;&amp;nbsp;relativePath =&amp;nbsp;&lt;span style="color: #2b91af;"&gt;HttpContext&lt;/span&gt;.Current.Request.Url.AbsolutePath;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: 'Courier New'; font-size: 10pt;"&gt;// "/Default.aspx"&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
Further reading:&lt;br /&gt;
&lt;a href="http://www.west-wind.com/weblog/posts/2009/Dec/21/Making-Sense-of-ASPNET-Paths"&gt;http://www.west-wind.com/weblog/posts/2009/Dec/21/Making-Sense-of-ASPNET-Paths&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/7997402329705633660-2494752599226312512?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QItNE1T6A7S_uGQnAeTFqtjq8GU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QItNE1T6A7S_uGQnAeTFqtjq8GU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QItNE1T6A7S_uGQnAeTFqtjq8GU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QItNE1T6A7S_uGQnAeTFqtjq8GU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/WMYXxsNZfRc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/2494752599226312512/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/aspnet-get-pathsurls.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2494752599226312512?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/2494752599226312512?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/WMYXxsNZfRc/aspnet-get-pathsurls.html" title="asp.net get paths/urls" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/aspnet-get-pathsurls.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEFRno7eip7ImA9WhRWFkU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-199983031835873002</id><published>2012-01-03T14:39:00.001-05:00</published><updated>2012-01-04T08:43:37.402-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-04T08:43:37.402-05:00</app:edited><title>C# Dispose Method</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
If a class implements the IDisposable interface, it will have a Dispose() Method. A simplified explanation for Dispose() would be, a place where you free up resources that garbage collector may not know to free. &amp;nbsp;Consider the example below&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; ConsoleApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetDataFromFile&lt;/span&gt;:&lt;span style="color: #2b91af;"&gt;IDisposable&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Dispose()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//perform clean up here&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//eg close the file handle&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
ReadFile()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt; fileData = &lt;span style="color: #a31515;"&gt;""&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//some code that reads the file will go in here&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;return&lt;/span&gt;
fileData;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;GetDataFromFile&lt;/span&gt; GF=&lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetDataFromFile&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt; data;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;try&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;data = GF.ReadFile();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;finally&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
GF.Dispose();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
Every class that implements&amp;nbsp;IDisposable, would have customized use for its Dispose method. For example,&amp;nbsp;&amp;nbsp;in .net class library, one of the classes that implements&amp;nbsp;IDisposable is&amp;nbsp;SqlConnection Class. In the&amp;nbsp;SqlConnection Class, the Dispose() method returns the connection object back to the connection pool.&lt;br /&gt;
&lt;br /&gt;
A few points to note&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
If you are freeing up resources in the Dispose, it is advisable that these resources should be freed in the destructor too. The reason being, if your class is being used by someone who forgets to call the Dispose(), then the freeing up of resources would still be performed when the garbage collection kicks in.&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;If an object's Dispose method is called more than once, the object must ignore all calls after the first one. &amp;nbsp;It should not throw an error.&lt;/li&gt;
&lt;li&gt;As a general rule, if you do not need to free up any unmanaged resources, you do not need to implement the&amp;nbsp;
IDisposable interface.&lt;/li&gt;
&lt;li&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;try&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data= GF.ReadFile();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;finally&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GF.Dispose();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
can also be written as&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;(&lt;span style="color: #2b91af;"&gt;GetDataFromFile&lt;/span&gt;&amp;nbsp;GF =&amp;nbsp;&lt;span style="color: blue;"&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;GetDataFromFile&lt;/span&gt;())&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data = GF.ReadFile();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7997402329705633660-199983031835873002?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/k5nn7uexYEev585d_YcU7JYHqo8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5nn7uexYEev585d_YcU7JYHqo8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/k5nn7uexYEev585d_YcU7JYHqo8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5nn7uexYEev585d_YcU7JYHqo8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/z7G6AMNPvss" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/199983031835873002/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2012/01/c-dispose.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/199983031835873002?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/199983031835873002?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/z7G6AMNPvss/c-dispose.html" title="C# Dispose Method" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2012/01/c-dispose.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MDSXY4eCp7ImA9WhRXEkg.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-1041809245342167876</id><published>2011-12-18T19:03:00.001-05:00</published><updated>2011-12-18T19:44:38.830-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-18T19:44:38.830-05:00</app:edited><title>Predicate C#</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span style="color: #3d85c6; font-size: large;"&gt;What is a Predicate?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The predicate is just a generic delegate that is defined in the .net framework class library. In the framework library, it is defined as&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; &lt;span style="color: blue;"&gt;delegate&lt;/span&gt; &lt;span style="color: blue;"&gt;bool&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Predicate&lt;/span&gt;&amp;lt;T&amp;gt;(T
obj);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
This delegate is used for searching purposes.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: #3d85c6; font-size: large;"&gt;Predicate Example&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: #3d85c6; font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
The FindAll() method in List&amp;lt;T&amp;gt; expects an instance of the predicate as a parameter. In the example below I show you how to do that.&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Linq.Expressions;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; PlayLambda&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; name;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;int&lt;/span&gt; Age;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; P1 = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P1.name = &lt;span style="color: #a31515;"&gt;"Mike"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P1.Age = 37;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; P2 = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P2.name = &lt;span style="color: #a31515;"&gt;"Tommy"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P2.Age = 13;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; P3 = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P3.name = &lt;span style="color: #a31515;"&gt;"Kim"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
P3.Age = 27;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;List&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;&amp;gt;
People = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;List&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;&amp;gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
People.Add(P1);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;People.Add(P2);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
People.Add(P3);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Predicate&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;&amp;gt;
myPredicate = IsDrinkingAge;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: green; font-family: Consolas; font-size: 13px;"&gt;//FindAll() expects an instance of the Predicate as a parameter&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; p &lt;span style="color: blue;"&gt;in&lt;/span&gt; People.FindAll(myPredicate))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color: #a31515;"&gt;"This person can legally drink: "&lt;/span&gt; +
p.name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;bool&lt;/span&gt;
IsDrinkingAge(&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; p)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//The signature of this method should match the signature
of the predicate&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;if&lt;/span&gt; (p.Age &amp;gt; 21)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;span style="color: blue;"&gt;return&lt;/span&gt; &lt;span style="color: blue;"&gt;true&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;else&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;span style="color: blue;"&gt;return&lt;/span&gt; &lt;span style="color: blue;"&gt;false&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;Shown below is the output of this program&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-Tew7K4WU2E0/Tu5_M6QL8sI/AAAAAAAAAMc/RxD6YmhH2fE/s1600/Predicate.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-Tew7K4WU2E0/Tu5_M6QL8sI/AAAAAAAAAMc/RxD6YmhH2fE/s1600/Predicate.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&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/7997402329705633660-1041809245342167876?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BF8B95RR5OoaL4Subfk2_ogkZKU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BF8B95RR5OoaL4Subfk2_ogkZKU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BF8B95RR5OoaL4Subfk2_ogkZKU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BF8B95RR5OoaL4Subfk2_ogkZKU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/vr1a2iS2dA4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/1041809245342167876/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/12/predicate-c.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/1041809245342167876?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/1041809245342167876?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/vr1a2iS2dA4/predicate-c.html" title="Predicate&lt;T&gt; C#" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-Tew7K4WU2E0/Tu5_M6QL8sI/AAAAAAAAAMc/RxD6YmhH2fE/s72-c/Predicate.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/12/predicate-c.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkANRHk7eyp7ImA9WhRUEUU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-5650604345801064004</id><published>2011-12-14T20:21:00.003-05:00</published><updated>2012-01-21T18:33:15.703-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-21T18:33:15.703-05:00</app:edited><title>What is LINQ?</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;span class="Apple-style-span" style="background-color: white; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14px; line-height: 19px;"&gt;Traditionally C# (like C++, java etc) has been an imperative programming language. That means if you want to fetch data from a source or dataset, we have to give the compiler a detailed set of precise instructions. For instance, suppose I have a datatable that has information on all my employees. If I want to find the salary of an employee named John, I would have to write code to loop thru every row in the datatable.&lt;/span&gt;&lt;/div&gt;
&lt;div class="post-body entry-content" id="post-body-5752317493515359507" style="background-color: white; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 14px; line-height: 1.4; position: relative; text-align: -webkit-auto; width: 564px;"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&amp;nbsp;Now suppose the same table is there in a SQL database. If I need to find the salary of John, all I would do is write something like&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 14px;"&gt;Select&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 14px;"&gt;&amp;nbsp;salary&amp;nbsp;from&amp;nbsp;tblEmployees&amp;nbsp;where&amp;nbsp;firstName='John'&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
As you can notice, in SQL I don't have to write code to loop through all the rows in the table. &amp;nbsp;DBMS does the job of looping through for me. This way of coding where you just declare what you want and the job gets done behind the scene by some engine for you, is called declarative programming.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;So what we have learned above can be summed up as&lt;br /&gt;
&lt;br /&gt;
Imperative programming: &amp;nbsp;:&amp;nbsp; Give detailed steps to get required data. eg C#,C++ etc&lt;br /&gt;
Declarative programming (functional programming) &amp;nbsp;:&lt;b&gt;&amp;nbsp;&amp;nbsp;&lt;/b&gt;Tell the computer what you need and it will be fetched for you. eg SQL&lt;br /&gt;
&lt;br /&gt;
Clearly, compared to imperative programming, &amp;nbsp;declarative programming requires a lot lesser code to retrieve data.&amp;nbsp;&lt;b&gt;LINQ is the way to write declarative code in C#.&lt;/b&gt;&lt;/div&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/7997402329705633660-5650604345801064004?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/kSFWx7b2ebwg4HaaKSfLH62Doxk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kSFWx7b2ebwg4HaaKSfLH62Doxk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/kSFWx7b2ebwg4HaaKSfLH62Doxk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kSFWx7b2ebwg4HaaKSfLH62Doxk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/R169_ZbeCMU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/5650604345801064004/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/12/what-is-linq.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5650604345801064004?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5650604345801064004?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/R169_ZbeCMU/what-is-linq.html" title="What is LINQ?" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/12/what-is-linq.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUACQ348eip7ImA9WhRQGU0.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-9094885143295733116</id><published>2011-12-14T19:08:00.001-05:00</published><updated>2011-12-14T19:09:22.072-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-14T19:09:22.072-05:00</app:edited><title>Type Inference</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
In C# you can write&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;var&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;x =&amp;nbsp;&lt;span style="color: #a31515;"&gt;"hello"&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Since&amp;nbsp;&lt;span class="Apple-style-span" style="color: #a31515; font-family: Consolas; font-size: 13px;"&gt;"hello"&lt;/span&gt;&amp;nbsp;is a string, &lt;b&gt;x&lt;/b&gt; becomes a string at compile time. &lt;b&gt;This is called type inference.&lt;/b&gt; (As in, the type of variable &lt;b&gt;x&lt;/b&gt; got inferred.)&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
If you try something like&lt;/div&gt;
&lt;div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;var&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; x = &lt;span style="color: #a31515;"&gt;"hello"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;int&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; b = a;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
The compiler will throw an error:&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: Calibri, sans-serif; font-size: 15px; line-height: 17px;"&gt;Cannot
implicitly convert type 'int' to 'string'.&lt;/span&gt;&lt;/div&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 class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7997402329705633660-9094885143295733116?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MxQQuda7sFeTomnMCTnp2SrAIaw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MxQQuda7sFeTomnMCTnp2SrAIaw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MxQQuda7sFeTomnMCTnp2SrAIaw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MxQQuda7sFeTomnMCTnp2SrAIaw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/jk2d1N6ERjk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/9094885143295733116/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/12/type-inference.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/9094885143295733116?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/9094885143295733116?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/jk2d1N6ERjk/type-inference.html" title="Type Inference" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/12/type-inference.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8DRX8_eyp7ImA9WhRRE0g.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-3305937902569247850</id><published>2011-11-26T17:23:00.001-05:00</published><updated>2011-11-26T20:21:14.143-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-26T20:21:14.143-05:00</app:edited><title>foreach C#  ( IEnumerable implementation )</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
foreach&amp;nbsp;is used in C# to iterate over a collection of items.&lt;br /&gt;
&lt;br /&gt;
The example below shows a simple example where&amp;nbsp;foreach&amp;nbsp;is used in a console application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;int&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;[] myArray = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: blue;"&gt;int&lt;/span&gt;[] {1,2,3,4,5 };&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;foreach&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; (&lt;span style="color: blue;"&gt;int&lt;/span&gt; i &lt;span style="color: blue;"&gt;in&lt;/span&gt; myArray)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp; System.&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(i);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;The output of this code is shown below&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-_Cx3bSTwI3U/TtFoOvoHi3I/AAAAAAAAAIE/W27lU50e86c/s1600/foreach.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://2.bp.blogspot.com/-_Cx3bSTwI3U/TtFoOvoHi3I/AAAAAAAAAIE/W27lU50e86c/s640/foreach.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
What we have done above is we have used foreach&amp;nbsp;on an instance of the system.array class. To be able to run&amp;nbsp;foreach&amp;nbsp;on an instance of a class, the compiler's rule is, the class must implement IEnumerable interface.&lt;br /&gt;
&lt;br /&gt;
So if you have a class, where you want to be able to run a foreach loop on an instance of the class, you could do that by implementing the IEnumerable interface in that class. &amp;nbsp;In fact the compiler does not even care if you have actually inherited from the IEnumerable interface. What it looks for is a few method names with particular signatures. The example below shows the bare essentials for being able to run a foreach on an instance of a class.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: Consolas; font-size: 9.5pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt; ConsoleApplication4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas;"&gt;&lt;span class="Apple-style-span"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;b&gt;&lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
firstName;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
lastName;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas;"&gt;&lt;span class="Apple-style-span" style="font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;People&lt;/span&gt;&lt;/b&gt;&lt;span style="color: green;"&gt;//This class is
practically implementing IEnumerable Interface&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;/*&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To be able to run a foreach on People
class &lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; You should have a method named
GetEnumerator.&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
*/&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;PeopleEnum&lt;/span&gt;
GetEnumerator()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: green;"&gt;/* This method
should return an instance of a class that has 3 methods of the following
signatures&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;gt; public bool MoveNext()&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;gt; public void Reset()&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;gt; public xxx Current()
--replace xxx with whatever you want the class People to be comprised of&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/span&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;PeopleEnum&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas;"&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&amp;nbsp;&lt;b&gt;&lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;PeopleEnum&lt;/span&gt;&lt;/b&gt;&lt;span style="color: green;"&gt;//This class
is practically implementing IEnumerator Interface&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;bool&lt;/span&gt;
MoveNext()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt; &lt;span style="color: blue;"&gt;false&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Reset()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;
Current&lt;span style="color: green;"&gt;//This is where the compiler finds out that,
the class People is comprised of Persons&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;get&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;span style="color: blue;"&gt;return&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas;"&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&amp;nbsp;&lt;b&gt;&lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;People&lt;/span&gt; developers = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;People&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;foreach&lt;/span&gt; (&lt;span style="color: #2b91af;"&gt;Person&lt;/span&gt; pp
&lt;span style="color: blue;"&gt;in&lt;/span&gt; developers)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;br /&gt;
What is shown above is what is required to satisfy the compiler's needs. For the foreach to be actually useful , you would implement IEnumerable as shown in&lt;br /&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/system.collections.ienumerable(v=VS.110).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.collections.ienumerable(v=VS.110).aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Its very rare that you would actually implement the IEnumerable interface for looping thru a user defined collection. Under most circumstances you would attain this by using a class in System.Collections Or the System.Collections.Generic Namespace.&lt;/div&gt;
&lt;br /&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/7997402329705633660-3305937902569247850?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mbmN5A1O3bRz5Av-cZF4seGPEus/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mbmN5A1O3bRz5Av-cZF4seGPEus/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mbmN5A1O3bRz5Av-cZF4seGPEus/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mbmN5A1O3bRz5Av-cZF4seGPEus/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/RRKW6CYuDeM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/3305937902569247850/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/11/foreach-c.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3305937902569247850?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3305937902569247850?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/RRKW6CYuDeM/foreach-c.html" title="foreach C#  ( IEnumerable implementation )" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-_Cx3bSTwI3U/TtFoOvoHi3I/AAAAAAAAAIE/W27lU50e86c/s72-c/foreach.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/11/foreach-c.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8DQ385fCp7ImA9WhRUEUs.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-6400915297153213654</id><published>2011-11-08T18:32:00.001-05:00</published><updated>2012-01-21T13:01:12.124-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-21T13:01:12.124-05:00</app:edited><title>C# Dependency Inversion (or the Inversion of Control ) using constructor injection</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Instead of dwelling on why the term "Inversion of control" was chosen, I will instead tell you what problem it tries to solve and how it solves it. You can come up with your own explanation of what the original intention of the term was. (Please share it with us in the comments below if you don't mind )&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The code shown below is an oversimplified version whose purpose is to only explain the concept. What I will try to show you here is how in a bad code, changing one part of the code requires changes in other parts of the code. And how after applying dependency inversion, &amp;nbsp;I could make different parts of code, independent of each other.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Imagine I have a console application that has a class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px; line-height: 14px;"&gt;GetMessageFromDatabase&lt;/span&gt;&amp;nbsp;that gets data from the database. I have another class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px; line-height: 14px;"&gt;DisplayMessage&amp;nbsp;&lt;/span&gt;that has a method that displays this message on the screen.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
ConsoleApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[]
args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;
dm = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dm.ShowMessage();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;
Gmd;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt;
DisplayMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Gmd = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; ShowMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(Gmd.GetMessage());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.ReadLine();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from the database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from database"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Everything works fine. Suppose 3 months down the line based on the argument passed into the&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;Main&lt;/span&gt;&amp;nbsp;method, I have to pull data either from a database or an xml file. To make that happen I add a class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px; line-height: 14px;"&gt;GetMessageFromXML&lt;/span&gt;&amp;nbsp;to my code. Also I make a slight modification to my&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;Main&lt;/span&gt;&amp;nbsp;&amp;nbsp;method. The code now looks like below.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; System;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
ConsoleApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[]
args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;
dm = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;(args[0].ToString());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dm.ShowMessage();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
source;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt;
DisplayMessage(&lt;span style="color: blue;"&gt;string&lt;/span&gt; s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; source = s;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; ShowMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;if&lt;/span&gt;
(source.ToUpper() == &lt;span style="color: #a31515;"&gt;"DATABASE"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;
Gmd = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(Gmd.GetMessage());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.ReadLine();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;else&lt;/span&gt;
&lt;span style="color: blue;"&gt;if&lt;/span&gt; (source.ToUpper() == &lt;span style="color: #a31515;"&gt;"XML"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;GetMessageFromXML&lt;/span&gt;
Gmx = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromXML&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(Gmx.GetMessage());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.ReadLine();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from the database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from database"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromXML&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from an XML file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from XML"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Now another 2 months later suppose I also need to read data from a text file based on the input parameter to the main method. What would I do? I would add another class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;GetMessageFromTextFile&lt;/span&gt;&amp;nbsp;.&amp;nbsp;Also I would have to modify the class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&lt;/span&gt;.&amp;nbsp;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Do you see how dependent the class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&lt;/span&gt;&amp;nbsp;is on the implementation (that is depending on where the data is being fetched from) ? &amp;nbsp;You can see where I am going with this.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;What I have shown you above so far, is bad code.&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;Now my question to you is this:&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;How do you write the code such that even if I add a new location that the data can be fetched from, the code in the class&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New';"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;DisplayMessage&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;&amp;nbsp;does not have to change?&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span class="Apple-style-span" style="color: red; font-size: large;"&gt;If you solve the above problem, you have invented your own inversion of control !&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Inversion of Control attempts to make the class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&lt;/span&gt;&amp;nbsp;&amp;nbsp;and class&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;GetMessageFromTextFile&amp;nbsp;&lt;/span&gt;totally independent of each other. Change in one class shouldn't &amp;nbsp;require a change in another class. &amp;nbsp;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
There are three popular ways of inversion of control&amp;nbsp;&amp;nbsp;namely&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;Constructor Injection&lt;/li&gt;
&lt;li&gt;Method Injection&lt;/li&gt;
&lt;li&gt;Property Injection&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
In the code below, I have demonstrated inversion of control using &lt;b&gt;constructor injection&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;using&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: blue; font-family: 'Courier New'; font-size: 10pt;"&gt;namespace&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;
ConsoleApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;interface&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;IGetData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
GetMessage();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;Program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;static&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[]
args)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;IGetData&lt;/span&gt;
IG;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;string&lt;/span&gt;
source = args[0].ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;if&lt;/span&gt;
(source.ToUpper() == &lt;span style="color: #a31515;"&gt;"DATABASE"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IG = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;else&lt;/span&gt;
&lt;span style="color: blue;"&gt;if&lt;/span&gt; (source.ToUpper() == &lt;span style="color: #a31515;"&gt;"XML"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IG = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetMessageFromXML&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;else&lt;/span&gt;
&lt;span style="color: blue;"&gt;if&lt;/span&gt; (source.ToUpper() == &lt;span style="color: #a31515;"&gt;"TEXT"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IG = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetMessageFromTextFile&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;else&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IG = &lt;span style="color: blue;"&gt;new&lt;/span&gt;
&lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;();&lt;span style="color: green;"&gt;//default set to database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;
dm = &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;/span&gt;(IG);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dm.ShowMessage();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;DisplayMessage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;IGetData&lt;/span&gt;
IGLocal;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt;
DisplayMessage(&lt;span style="color: #2b91af;"&gt;IGetData&lt;/span&gt; IG)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IGLocal = IG;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;void&lt;/span&gt; ShowMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(IGLocal.GetMessage());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromDatabase&lt;/span&gt;
: &lt;span style="color: #2b91af;"&gt;IGetData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from the database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from database"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromXML&lt;/span&gt;
: &lt;span style="color: #2b91af;"&gt;IGetData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from an XML file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from XML"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;class&lt;/span&gt; &lt;span style="color: #2b91af;"&gt;GetMessageFromTextFile&lt;/span&gt;
: &lt;span style="color: #2b91af;"&gt;IGetData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;public&lt;/span&gt; &lt;span style="color: blue;"&gt;string&lt;/span&gt; GetMessage()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: green;"&gt;//Pretend
this comes from an Text file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;return&lt;/span&gt;
&lt;span style="color: #a31515;"&gt;"Hi from Text file"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
Now like you see above, injecting the dependencies through the constructor, I am decoupling&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&amp;nbsp;&lt;/span&gt;class from the class&amp;nbsp;&lt;span style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;GetMessageFromDatabase&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;&amp;nbsp;&lt;/span&gt;or any other class that the&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&amp;nbsp;&lt;/span&gt;class might end up utilizing. I can add as many new classes as I want, to fetch data, without&amp;nbsp;modifying&amp;nbsp;the&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;DisplayMessage&amp;nbsp;&lt;/span&gt;class, as long as they inherit from the&amp;nbsp;&lt;span class="Apple-style-span" style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;IGetData&amp;nbsp;&lt;/span&gt;interface.&lt;br /&gt;
So what happened here is that, everything depends on the interface. Which is ideal.&lt;br /&gt;
&lt;br /&gt;
Now you might argue that I actually ended up shifting the dependency to the&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;Main&amp;nbsp;&lt;/span&gt;method. &amp;nbsp;You are absolutely correct. But like I said earlier, I am trying to strip this example to bare essentials. So that the root concept is easier to grasp. If you are curious to know, the dependency can be removed from the&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;Main&amp;nbsp;&lt;/span&gt;method, in multiple ways. One way being, to move the dependency to another class by applying the factory pattern, whose responsibility would be to pass the right&amp;nbsp;&lt;span style="color: #2b91af; font-family: 'Courier New'; font-size: 13px;"&gt;IGetData&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New'; font-size: 13px;"&gt;&amp;nbsp;&lt;/span&gt;object, based on the source.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;Further reading&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://dotnetanalysis.blogspot.com/2011/10/principles-of-design-patterns.html"&gt;http://dotnetanalysis.blogspot.com/2011/10/principles-of-design-patterns.html&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-yvEM2xZJG54/Trm7-2r5mKI/AAAAAAAAAH8/Vi-2caEeNzw/s1600/co.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-yvEM2xZJG54/Trm7-2r5mKI/AAAAAAAAAH8/Vi-2caEeNzw/s1600/co.gif" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: 'Courier New'; font-size: 10pt; line-height: 115%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&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/7997402329705633660-6400915297153213654?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OsQA3UUSA-uLZYQV9Kk4TBb2kgo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OsQA3UUSA-uLZYQV9Kk4TBb2kgo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OsQA3UUSA-uLZYQV9Kk4TBb2kgo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OsQA3UUSA-uLZYQV9Kk4TBb2kgo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/YKkl8YJS10k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/6400915297153213654/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/11/dependency-inversion-or-inversion-of.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6400915297153213654?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/6400915297153213654?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/YKkl8YJS10k/dependency-inversion-or-inversion-of.html" title="C# Dependency Inversion (or the Inversion of Control ) using constructor injection" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-yvEM2xZJG54/Trm7-2r5mKI/AAAAAAAAAH8/Vi-2caEeNzw/s72-c/co.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/11/dependency-inversion-or-inversion-of.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEYHQ3syfip7ImA9WhRTGEU.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-5657092504665698437</id><published>2011-10-31T18:47:00.002-04:00</published><updated>2011-11-09T18:42:12.596-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-09T18:42:12.596-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Design patterns" /><category scheme="http://www.blogger.com/atom/ns#" term="SOLID principles" /><title>Principles of software design</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Every software application, whether you apply design patterns or not, you should adhere to the design principles. Applying design principles makes your application robust and easy to maintain. Also design principles must be learned before you can embark on a journey to learn design patterns. &amp;nbsp;Allow me to introduce you to design principles with the so called&amp;nbsp;&lt;b&gt;SOLID &lt;/b&gt;design principles.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;S: &amp;nbsp; Single Responsibility Principle&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
Like the name suggests, what this means is that every object should be built for one reason only. You should avoid writing multi purpose classes. For example in the .net class library, the string functions are in its own single purpose (sting functions) &amp;nbsp;System&lt;span xmlns=""&gt;.&lt;/span&gt;String&amp;nbsp;class and the math functions are in&amp;nbsp;&lt;span style="font-family: 'Segoe UI', Verdana, Arial; font-size: 14px;" xmlns=""&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: small;"&gt;System.Math class (for math functions).&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;O: &amp;nbsp;Open-Closed Principle&lt;/b&gt;&lt;br /&gt;
A class should be open for extension and closed for modification. This means once a class has had a stable release, the existing functionality should never be modified. It it however okay to add new functionality.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;L: &amp;nbsp; Liskov Substitution Principle&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
This principle states that you should be able to use a derived class in place on the parent class and &amp;nbsp;the derived class should behave the same as its parent class.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;I: &amp;nbsp; &amp;nbsp;Interface Segregation Principle&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
This principle is tells you to separate interfaces based on their responsibility. Do not have one huge interface for everything.&amp;nbsp;For example imagine the&amp;nbsp;IEnumerable&amp;nbsp;interface also made you implement a lot of methods that you don't need for a foreach loop. Thats obviously an unwanted&amp;nbsp;inconvenience, if all you want is to apply a foreach loop. This is avoided by having only the methods required for a foreach loop as a part of the&amp;nbsp;IEnumerable&amp;nbsp;interface.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;D: &amp;nbsp; Dependency Inversion Principle (or the Inversion of Control Principle )&lt;/b&gt;&lt;br /&gt;
The&amp;nbsp;Dependency Inversion Principle states when one class uses another class, both the code in both classes can be totally independent of each other and should only depend on interfaces (or abstract classes).&lt;br /&gt;
There are three ways to achieve this, namely&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;Constructor Injection&lt;/li&gt;
&lt;li&gt;Method Injection&lt;/li&gt;
&lt;li&gt;Property Injection&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;br /&gt;
The&amp;nbsp;&amp;nbsp;Dependency Inversion Principle&amp;nbsp;is a concept that will take a little more reading to understand. I would recommend checking out this article, which explains this concept in a lot more detail.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://dotnetanalysis.blogspot.com/2011/11/dependency-inversion-or-inversion-of.html"&gt;http://dotnetanalysis.blogspot.com/2011/11/dependency-inversion-or-inversion-of.html&lt;/a&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/-Vk47fdVs-Fc/TrmWgdp36WI/AAAAAAAAAH0/KjSO1Jkfelg/s1600/co.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-Vk47fdVs-Fc/TrmWgdp36WI/AAAAAAAAAH0/KjSO1Jkfelg/s1600/co.gif" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&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/7997402329705633660-5657092504665698437?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GwDVsYw3O3BTj1QF0seiHCz3HEA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GwDVsYw3O3BTj1QF0seiHCz3HEA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GwDVsYw3O3BTj1QF0seiHCz3HEA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GwDVsYw3O3BTj1QF0seiHCz3HEA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/JWG0cgo_NLw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/5657092504665698437/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/10/principles-of-design-patterns.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5657092504665698437?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/5657092504665698437?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/JWG0cgo_NLw/principles-of-design-patterns.html" title="Principles of software design" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-Vk47fdVs-Fc/TrmWgdp36WI/AAAAAAAAAH0/KjSO1Jkfelg/s72-c/co.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/10/principles-of-design-patterns.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4NRns9fSp7ImA9WhRRFE8.&quot;"><id>tag:blogger.com,1999:blog-7997402329705633660.post-3729647927598400230</id><published>2011-10-30T21:36:00.000-04:00</published><updated>2011-11-27T14:43:17.565-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-27T14:43:17.565-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="introduction to generics in .net" /><title>Introduction to Generics C#</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;
&amp;nbsp;Generics is a simple concept that sounds sophisticated, due to the use of
the fancy word "Generics".&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;Generics basically is anything that uses the keyword &amp;lt;T&amp;gt;.&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;lt;T&amp;gt; can be thought of as "any type"&lt;/span&gt;&lt;/div&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u1:p&gt;&lt;/u1:p&gt;

&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;Consider the function below&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span style="color: blue;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;void&lt;/span&gt;&amp;nbsp;Display(&lt;span style="color: blue;"&gt;string&lt;/span&gt;&amp;nbsp;s)&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(s);&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;Now suppose you want to be able to pass variables of any type(int,
string etc) into this method. This is what you could do.&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span style="color: blue;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;void&lt;/span&gt;&amp;nbsp;Display&amp;lt;T&amp;gt;(T anyType)&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(anyType.ToString());&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;u2:p&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;
&lt;br /&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u2:p&gt;&lt;/div&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u1:p&gt;&lt;/u1:p&gt;

&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;Given below is the whole code.&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span style="color: blue;"&gt;using&lt;/span&gt;&amp;nbsp;System;&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&lt;span style="color: blue;"&gt;using&lt;/span&gt;&amp;nbsp;System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span style="color: blue;"&gt;namespace&lt;/span&gt;&amp;nbsp;ConsoleApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;class&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;Program&lt;/span&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;void&lt;/span&gt;&amp;nbsp;Main(&lt;span style="color: blue;"&gt;string&lt;/span&gt;[] args)&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;int&lt;/span&gt;&amp;nbsp;a = 1;&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;string&lt;/span&gt;&amp;nbsp;s =&amp;nbsp;&lt;span style="color: #a31515;"&gt;"hey"&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
NonGenericDisplay(s);&lt;span style="color: green;"&gt;//Displays "hey" &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span style="color: green;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
GenericDisplay&amp;lt;&lt;span style="color: blue;"&gt;int&lt;/span&gt;&amp;gt;(a);&lt;span style="color: green;"&gt;//Displays 1&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
GenericDisplay&amp;lt;&lt;span style="color: blue;"&gt;string&lt;/span&gt;&amp;gt;(s);&lt;span style="color: green;"&gt;//Displays "hey"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;void&lt;/span&gt;&amp;nbsp;NonGenericDisplay(&lt;span style="color: blue;"&gt;string&lt;/span&gt;&amp;nbsp;s)&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; //This method can only accept strings&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(s);&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
}&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: .0001pt; margin: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;static&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;void&lt;/span&gt;&amp;nbsp;GenericDisplay&amp;lt;T&amp;gt;(T
anyType)&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
{&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: green; font-family: Consolas; font-size: 13px;"&gt;//This method can accept
int,string,bool etc..&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 0.0001pt;"&gt;
&lt;span style="color: green; font-family: Consolas; font-size: 9.5pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;span style="color: #2b91af;"&gt;Console&lt;/span&gt;.WriteLine(anyType.ToString());&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
}&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;o:p&gt;&lt;/o:p&gt;&lt;u1:p&gt;&lt;/u1:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;u2:p&gt;&lt;/u2:p&gt;}&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; margin-left: 0in; margin-right: 0in; margin-top: 0in;"&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;The article gave you an oversimplified idea of what generics is all about.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;In a more practical sense, generics is usually used where you want to declare a type at time of instantiating a class.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;Further Reading:&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://dotnetanalysis.blogspot.com/2011/04/list.html"&gt;http://dotnetanalysis.blogspot.com/2011/04/list.html&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&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/7997402329705633660-3729647927598400230?l=dotnetanalysis.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/H9KQWBX9ZVyI34BjevoQ12ldUOg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H9KQWBX9ZVyI34BjevoQ12ldUOg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/H9KQWBX9ZVyI34BjevoQ12ldUOg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H9KQWBX9ZVyI34BjevoQ12ldUOg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/jyvro/~4/sro3AbaZB4I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://dotnetanalysis.blogspot.com/feeds/3729647927598400230/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://dotnetanalysis.blogspot.com/2011/10/introduction-to-generics-c.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3729647927598400230?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7997402329705633660/posts/default/3729647927598400230?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/jyvro/~3/sro3AbaZB4I/introduction-to-generics-c.html" title="Introduction to Generics C#" /><author><name>Dilbert</name><uri>http://www.blogger.com/profile/08541974152182708949</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="19" height="32" src="http://4.bp.blogspot.com/-wmcoJanKUrg/TY6TdpI9CjI/AAAAAAAAADc/g7mZ7zXz5IA/s220/db.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://dotnetanalysis.blogspot.com/2011/10/introduction-to-generics-c.html</feedburner:origLink></entry></feed>

