<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2648132302968261880</id><updated>2012-02-16T18:25:58.291-08:00</updated><category term='C++'/><category term='XML-XSD-XSLT'/><category term='XAML-Silverlight-WPF'/><category term='Regex'/><category term='Vista'/><category term='Visual Studio'/><category term='DataGridView'/><category term='Internet'/><category term='Smartphone'/><category term='SQL Server'/><category term='AJAX'/><category term='HTML-XHTML-CSS'/><category term='Web services'/><category term='Version control'/><category term='Windows'/><category term='Audio/Video'/><category term='JavaScript'/><category term='C#.NET'/><category term='ASP.NET MVC'/><category term='Freebies'/><category term='.NET'/><category term='Web'/><category term='ASP.NET'/><category term='ADO.NET'/><title type='text'>iBorn2Code</title><subtitle type='html'>computer programming .Net C# ASP.NET SQL
VFP CSS JavaScript SQL2005 VisualFoxPro
Fredrick Farhad Bayanati</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default?start-index=101&amp;max-results=100'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>177</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4577304716253692954</id><published>2011-10-15T17:36:00.000-07:00</published><updated>2011-10-15T17:43:42.790-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>Database table indexes with type and size</title><content type='html'>The following query retrieves index names and shows type and size of indices.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;SELECT&lt;br /&gt;    sysSchma.name AS SchemaName &lt;br /&gt;    , sysObj.name AS TableName &lt;br /&gt;    , sysIndx.name AS IndexName &lt;br /&gt;    , sysIndx.type_desc AS IndexType&lt;br /&gt;    , sysPartStat.used_page_count * 8 AS IndexSizeKB &lt;br /&gt;    , CAST(sysPartStat.used_page_count * 8 / 1024.00 AS Decimal(10,3))&lt;br /&gt;    AS IndexSizeMB &lt;br /&gt;FROM sys.dm_db_partition_stats AS sysPartStat&lt;br /&gt;INNER JOIN sys.indexes AS sysIndx&lt;br /&gt;   ON sysPartStat.[object_id] = sysIndx.[object_id]  &lt;br /&gt;    AND sysPartStat.index_id = sysIndx.index_id &lt;br /&gt;    AND sysIndx.type_desc &amp;lt;&amp;gt; 'HEAP'&lt;br /&gt;INNER JOIN sys.objects AS sysObj&lt;br /&gt;   ON sysObj.[object_id] = sysPartStat.[object_id]  &lt;br /&gt;INNER JOIN sys.schemas AS sysSchma   &lt;br /&gt;   ON sysObj.[schema_id] = sysSchma.[schema_id]  &lt;br /&gt;    AND sysSchma.name &amp;lt;&amp;gt; 'SYS'&lt;br /&gt;    -- WHERE partition_stats.[object_id] = object_id('dbo.TableName') &lt;br /&gt;ORDER BY SchemaName, TableName, IndexName, IndexType &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/2648132302968261880-4577304716253692954?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4577304716253692954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4577304716253692954' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4577304716253692954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4577304716253692954'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/10/database-table-indexes-with-type-and.html' title='Database table indexes with type and size'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-519414675686095594</id><published>2011-09-05T22:46:00.000-07:00</published><updated>2011-09-05T23:03:00.546-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>Dumpbin.exe - a tool to provide info about DLLs (x86 or x64)</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/-t4QvFZbdnho/TmW0ShnR9AI/AAAAAAAAALU/aorWuMWTqOY/s1600/DumpBinTest.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 174px;" src="http://3.bp.blogspot.com/-t4QvFZbdnho/TmW0ShnR9AI/AAAAAAAAALU/aorWuMWTqOY/s320/DumpBinTest.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5649119537959924738" /&gt;&lt;/a&gt;&lt;div&gt;Dumpbin.exe is one of tools with ability to provide information about the format and symbols in executable, library, and DLL files.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are some options which you can utilize with Dumpbin.exe utility like /ALL, /DISASEM, /SUMMARY, /SYMBOLS, ...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you want to see a DLL is compiled in x86 or 64 bit you can use /HEADERS option in command line:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small; "&gt;&lt;b&gt;dumpbin /headers MyCompany.MyDepartment.MyNameSapece.MyAssembly.dll&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To be able to call DumpBin.exe in command line, you better extend PATH to be able to call it from anywhere: (The path is depend on your system)&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-size: small; "&gt;SET PATH=%PATH%;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;   &lt;/div&gt;&lt;div&gt;or&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: small; "&gt;SET PATH=%PATH%;C:\Program Files\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE;&lt;/span&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/2648132302968261880-519414675686095594?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/519414675686095594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=519414675686095594' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/519414675686095594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/519414675686095594'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/09/dumpbin-tool-to-provide-info-about-dlls.html' title='Dumpbin.exe - a tool to provide info about DLLs (x86 or x64)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-t4QvFZbdnho/TmW0ShnR9AI/AAAAAAAAALU/aorWuMWTqOY/s72-c/DumpBinTest.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4887299766998460496</id><published>2011-09-05T19:24:00.000-07:00</published><updated>2011-09-05T22:45:15.810-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Web Developer 2010 Express on NetBook</title><content type='html'>I tried to install Visual Web Developer 2010 Express on my Netbook&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Intel Atom N550 (1.5GHz, 1MB L2 Cache)&lt;/li&gt;&lt;li&gt;1 GB DDR3 RAM&lt;/li&gt;&lt;li&gt;250 GB HDD&lt;/li&gt;&lt;/ul&gt;The folowing items installed and it took a few hours!&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Microsoft .NET Framework 4&lt;/li&gt;&lt;li&gt;SQL Server Express 2008 R2&lt;/li&gt;&lt;li&gt;Visual Web Developer 2010 Express&lt;/li&gt;&lt;li&gt;Visual Studio 2010 SP1 Code (SP1 only installation)&lt;/li&gt;&lt;li&gt;Visual Studio 2010 SP1 KB983509&lt;/li&gt;&lt;li&gt;IIS 7.5 Express&lt;/li&gt;&lt;li&gt;SQL Server System CLR Types&lt;/li&gt;&lt;li&gt;SQL Server Native Client&lt;/li&gt;&lt;li&gt;Microsoft SQL Server Compact 4.0&lt;/li&gt;&lt;li&gt;SQL Server 2008 R2 Management Objects&lt;/li&gt;&lt;li&gt;Web Deployment Tool 2.1&lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0 Installer for New Installtion&lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0 Installer &lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0&lt;/li&gt;&lt;li&gt;ASP.NET MVC 3 Tools Update Installer&lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010 SP1 Tools for ASP.NET Web Pages&lt;/li&gt;&lt;li&gt;ASP.NET MVC 3 Tools Update Language Packs Installer&lt;/li&gt;&lt;li&gt;ASP.NET MVC 3 Tools Update Language Packs &lt;/li&gt;&lt;li&gt;Visual Web Developer Express 2010 SP1&lt;/li&gt;&lt;li&gt;Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0 Installer for Repair&lt;/li&gt;&lt;/ul&gt;It worked but for sure it's very slow on this machine.&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/2648132302968261880-4887299766998460496?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4887299766998460496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4887299766998460496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4887299766998460496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4887299766998460496'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/09/visual-web-developer-2010-express-on.html' title='Visual Web Developer 2010 Express on NetBook'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-564590810266846466</id><published>2011-06-18T22:42:00.000-07:00</published><updated>2011-06-18T22:45:13.595-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL - SSMS Server Name list removal (duplicate items)</title><content type='html'>SQL 2005:&lt;br /&gt;C:\Documents and Settings\&lt;USER&gt;\Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat&lt;br /&gt;&lt;br /&gt;SQL 2008:&lt;br /&gt;C:\Documents and Settings\&lt;USER&gt;\Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin&lt;br /&gt;&lt;br /&gt;- Close all instances of SSMS&lt;br /&gt;- Delete or rename above file&lt;br /&gt;- Open SSMS&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-564590810266846466?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/564590810266846466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=564590810266846466' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/564590810266846466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/564590810266846466'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/06/sql-ssms-server-name-list-removal.html' title='SQL - SSMS Server Name list removal (duplicate items)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2365899079622156467</id><published>2011-05-01T16:56:00.000-07:00</published><updated>2011-05-03T21:57:58.030-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>Ext JS (JavaScript library)</title><content type='html'>&lt;a href="http://www.sencha.com/"&gt;Ext JS&lt;/a&gt; is a JavaScript library for building interactive web applications using techniques such as Ajax, DHTML and DOM scripting. Ext includes interoperability with jQuery and Prototype.&lt;br /&gt;&lt;br /&gt;Ext JS provides an easy-to-use, rich user interface, much like you would find in a&lt;br /&gt;desktop application. This lets Web developers concentrate on the functionality&lt;br /&gt;of Web applications instead of the technical caveats.&lt;br /&gt;&lt;br /&gt;"The Ext JS library started out as an extension to the moderately popular, yet very&lt;br /&gt;powerful Yahoo User Interface library, providing what the YUI library lacked: an&lt;br /&gt;easy-to-use API (Application Programming Interface), and real world widgets.&lt;br /&gt;Even though the YUI Library tried to focus on the 'User Interface', it didn't contain&lt;br /&gt;much that was useful right out-of-the-box."&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2365899079622156467?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2365899079622156467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2365899079622156467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2365899079622156467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2365899079622156467'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/05/ext-js-javascript-library.html' title='Ext JS (JavaScript library)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2447430315236537154</id><published>2011-02-27T22:26:00.000-08:00</published><updated>2011-02-27T22:30:31.778-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>Windows Service or ASP.NET - System.Security.SecurityException when writing to Event Log</title><content type='html'>The solution was to give NetworkService and LocalService read (Full) permission on the EventLog/Security key.&lt;br /&gt;&lt;br /&gt;To resolve you need to give the NetworkService/LocalService or ASP.NET user permission to read from the event log registry entries. &lt;br /&gt;&lt;br /&gt;   1. Select Start - Run, then enter: regedt32&lt;br /&gt;   2. Navigate to the following key:&lt;br /&gt;      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Security&lt;br /&gt;   3. Right click on this entry and select Permissions.&lt;br /&gt;   4. Add the NetworkService/LocalService/ASPNET user.&lt;br /&gt;   5. Give it Read (Full) permission.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2447430315236537154?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2447430315236537154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2447430315236537154' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2447430315236537154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2447430315236537154'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/02/windows-service-or-aspnet.html' title='Windows Service or ASP.NET - System.Security.SecurityException when writing to Event Log'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4709996807464061756</id><published>2011-02-20T23:54:00.000-08:00</published><updated>2011-02-20T23:55:49.609-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><title type='text'>A little about ASP.NET MVC</title><content type='html'>ASP.NET MVC is a fascinating technology that provides an alternative to Web forms for building Web applications. Instead of building pages using server controls that provide relatively little control over the HTML they produce, MVC gives you complete control. ASP.NET MVC is based on the Model-View-Controller pattern. It’s good to mention that there are almost no limitations in how you provide data to an MVC application. I'll write more about ASP.NET MVC soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4709996807464061756?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4709996807464061756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4709996807464061756' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4709996807464061756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4709996807464061756'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/02/little-about-aspnet-mvc.html' title='A little about ASP.NET MVC'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7777452306713742381</id><published>2011-02-20T16:34:00.000-08:00</published><updated>2011-02-20T16:35:51.646-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Web services'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>.NET - Web services design tip</title><content type='html'>When a request comes in the receiver un-wraps it to figure out what objects got call.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;"Do not include business logic in Web service implementation"&lt;/span&gt;&lt;br /&gt;Instead, include objects that Web service instantiates and uses, in this way the whole &lt;br /&gt;implementation is cleaner. The reason of implementing the business logic in elsewhere is because of being able to test them separately, implement them separately, and keep the things easier for maintenance and debugging.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7777452306713742381?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7777452306713742381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7777452306713742381' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7777452306713742381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7777452306713742381'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/02/net-web-services-design-tip.html' title='.NET - Web services design tip'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5487655731696822979</id><published>2011-02-12T21:55:00.000-08:00</published><updated>2011-02-12T21:56:15.096-08:00</updated><title type='text'>C# - Static constructor cannot be overloaded</title><content type='html'>Static constructors are called before any other class members are called and called once only.Their main purpose is to initialize only the static members of a class. Static constructors cannot be overloaded.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5487655731696822979?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5487655731696822979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5487655731696822979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5487655731696822979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5487655731696822979'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/02/c-static-constructor-cannot-be.html' title='C# - Static constructor cannot be overloaded'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-273719539708224290</id><published>2011-01-23T15:57:00.000-08:00</published><updated>2011-01-23T16:01:40.688-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>C# - Static Constructors</title><content type='html'>• You declare a static constructor by "static" keyword in front of the constructor name.&lt;br /&gt;• To initialize static fields in a class you can use static constructor.&lt;br /&gt;• A static constructor is called before an instance of a class is created&lt;br /&gt;• A static constructor is called before a static member is called.&lt;br /&gt;• A static constructor is called before the static constructor of a derived class.&lt;br /&gt;• A static constructor does not take access modifiers or have parameters.&lt;br /&gt;• A static constructor cannot be called directly.&lt;br /&gt;• They are called only once.&lt;br /&gt;• Can't access anything but static members.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;class MyClass&lt;br /&gt;{&lt;br /&gt;    // Static constructor&lt;br /&gt;    static MyClass()&lt;br /&gt;    {&lt;br /&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/2648132302968261880-273719539708224290?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/273719539708224290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=273719539708224290' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/273719539708224290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/273719539708224290'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/01/c-static-constructors.html' title='C# - Static Constructors'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6616203674149897633</id><published>2011-01-09T11:38:00.000-08:00</published><updated>2011-01-09T11:40:58.262-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio 2010 runs faster when the Windows Automation API 3.0 is installed</title><content type='html'>Applications that use Windows Automation APIs can significantly decrease Microsoft Visual Studio IntelliSense performance if Windows Automation API 3.0 is not installed. For example, the Windows pen and touch services can significantly decrease Visual Studio IntelliSense performance if Windows Automation API 3.0 is not installed.&lt;br /&gt;&lt;a href="http://support.microsoft.com/kb/981741"&gt;http://support.microsoft.com/kb/981741&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6616203674149897633?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6616203674149897633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6616203674149897633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6616203674149897633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6616203674149897633'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/01/visual-studio-2010-runs-faster-when.html' title='Visual Studio 2010 runs faster when the Windows Automation API 3.0 is installed'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2709546765673004690</id><published>2011-01-02T17:04:00.000-08:00</published><updated>2011-01-02T17:12:12.478-08:00</updated><title type='text'>http://twitter.com/fbayanati</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/TSEiTBCkYoI/AAAAAAAAALE/5gjZ9gMRyhA/s1600/twitter%2528fbayanati%2529.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 126px; height: 31px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/TSEiTBCkYoI/AAAAAAAAALE/5gjZ9gMRyhA/s320/twitter%2528fbayanati%2529.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5557761125243970178" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://twitter.com/fbayanati"&gt;Tweets&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2709546765673004690?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2709546765673004690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2709546765673004690' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2709546765673004690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2709546765673004690'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/01/tweets.html' title='http://twitter.com/fbayanati'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/TSEiTBCkYoI/AAAAAAAAALE/5gjZ9gMRyhA/s72-c/twitter%2528fbayanati%2529.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3799290606222432872</id><published>2011-01-02T12:22:00.000-08:00</published><updated>2011-01-02T13:35:03.304-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>T-SQL Copy database diagrams to another database</title><content type='html'>Unlike stored procedure, functions, tables, views, ... MS Sql server doesn't have an easy way to script or create database diagrams. It keeps all the diagrams in [sysdiagrams] system table.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;SELECT *&lt;br /&gt;FROM sysdiagrams&lt;br /&gt;&lt;br /&gt;USE newDb&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;INSERT INTO sysdiagrams&lt;br /&gt;([name], pricipal_id, version, definition)&lt;br /&gt;SELECT [name], pricipal_id, version, definition&lt;br /&gt;FROM #tempDiagrams&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/2648132302968261880-3799290606222432872?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3799290606222432872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3799290606222432872' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3799290606222432872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3799290606222432872'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2011/01/t-sql-copy-database-diagrams-to-another.html' title='T-SQL Copy database diagrams to another database'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1700261383136059647</id><published>2010-12-25T12:21:00.000-08:00</published><updated>2010-12-25T12:26:00.788-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Greenshot - a free screenshot tool</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/TRZTL2Eal4I/AAAAAAAAAK0/GoUEopinDz0/s1600/greenshot_logo.gif"&gt;&lt;img style="float:right; margin:0 0 2px 2px;cursor:pointer; cursor:hand;width: 320px; height: 45px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/TRZTL2Eal4I/AAAAAAAAAK0/GoUEopinDz0/s320/greenshot_logo.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5554718653365786498" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://getgreenshot.org/"&gt;Greenshot&lt;/a&gt; is a light-weight screenshot software tool for Windows.&lt;br /&gt;&lt;br /&gt;Greenshot was published under GPL, i.e. this software can be downloaded and used free of charge, even in a commercial environment.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1700261383136059647?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1700261383136059647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1700261383136059647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1700261383136059647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1700261383136059647'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/12/greenshot-free-screenshot-tool.html' title='Greenshot - a free screenshot tool'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e4Tel4Sa2XA/TRZTL2Eal4I/AAAAAAAAAK0/GoUEopinDz0/s72-c/greenshot_logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1065678646406237055</id><published>2010-12-19T20:43:00.000-08:00</published><updated>2010-12-19T20:49:21.296-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Smallest Dot Net</title><content type='html'>Get smallest .Net framework possible!&lt;br /&gt;&lt;br /&gt;An interesting &lt;a href="http://www.smallestdotnet.com"&gt;one page web site&lt;/a&gt; can help you to find out which version of .NET has been installed in your system. It also provide details and estimate about the size of download which makes your system up to date with latest .NET version.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1065678646406237055?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1065678646406237055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1065678646406237055' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1065678646406237055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1065678646406237055'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/12/smallest-dot-net.html' title='Smallest Dot Net'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6422678084565727136</id><published>2010-11-14T20:52:00.000-08:00</published><updated>2010-11-14T21:05:26.142-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Smartphone'/><title type='text'>Free ebook: Programming Windows Phone 7</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/TOC--QGpL3I/AAAAAAAAAKg/145MVbh3Dsg/s1600/winmobile-7.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 360px; height: 270px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/TOC--QGpL3I/AAAAAAAAAKg/145MVbh3Dsg/s400/winmobile-7.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5539637518349709170" /&gt;&lt;/a&gt;&lt;br /&gt;Charles Petzold wrote the book in 24 chapters, you can download the e-book version and enjoy learning how to program for Windows Phone 7 from &lt;a href="http://blogs.msdn.com/b/microsoft_press/archive/2010/10/28/free-ebook-programming-windows-phone-7-by-charles-petzold.aspx"&gt;here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6422678084565727136?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6422678084565727136/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6422678084565727136' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6422678084565727136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6422678084565727136'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/11/free-ebook-programming-windows-phone-7.html' title='Free ebook: Programming Windows Phone 7'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/TOC--QGpL3I/AAAAAAAAAKg/145MVbh3Dsg/s72-c/winmobile-7.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3099068188057583830</id><published>2010-09-19T23:52:00.000-07:00</published><updated>2010-09-19T23:56:02.521-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>Core JavaScript files in the Microsoft AJAX Library</title><content type='html'>The JavaScript files provide client side functionality for your web pages. Three JavaScript files are stored as resources in the System.Web.Extensions assembly.&lt;br /&gt;&lt;br /&gt;At runtime, the HTTP handler ScriptResourceHandler loads the files, caches them for future use, compresses them, and sends them to the web browser when they’re requested:&lt;br /&gt;&lt;br /&gt;* MicrosoftAjax.js, contains most of the Microsoft AJAX Library’s functionality, the browser compatibility layer, the core JavaScript classes, and the Base Class Library.&lt;br /&gt;&lt;br /&gt;* MicrosoftAjaxTimer.js, contains classes to support the Timer server control. This control enables you to update either part of or an entire web page at regular intervals,&lt;br /&gt;&lt;br /&gt;* MicrosoftAjaxWebForms.js, contains classes to support partial page rendering, this functionality allows portions of a page to be updated asynchronously.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3099068188057583830?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3099068188057583830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3099068188057583830' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3099068188057583830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3099068188057583830'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/09/core-javascript-files-in-microsoft-ajax.html' title='Core JavaScript files in the Microsoft AJAX Library'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5927034146567629264</id><published>2010-06-13T21:57:00.000-07:00</published><updated>2010-06-13T22:07:18.863-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Source Safe - Recursive get items</title><content type='html'>The following codes work around Visual Source Safe (VSS), it's to get latest items from a project path in VSS.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.IO;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Data;&lt;br /&gt;using System.Data.SqlClient;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.Windows.Forms;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using Microsoft.VisualStudio.SourceSafe.Interop;&lt;br /&gt;&lt;br /&gt;namespace VssDiff&lt;br /&gt;{&lt;br /&gt;    public class VssItem&lt;br /&gt;    {&lt;br /&gt;        #region Fields&lt;br /&gt;        private string cnStr;&lt;br /&gt;        private string dtaTblName;&lt;br /&gt;        #endregion&lt;br /&gt;&lt;br /&gt;        #region Properties&lt;br /&gt;        public string CnStr { get { return cnStr; } set { cnStr = value; } }&lt;br /&gt;        public string DtaTblName {&lt;br /&gt;          get { return dtaTblName; }&lt;br /&gt;          set { dtaTblName = value; }&lt;br /&gt;        }&lt;br /&gt;        #endregion &lt;br /&gt;&lt;br /&gt;        public DataSet VssDataSet;&lt;br /&gt;&lt;br /&gt;        public VssItem()&lt;br /&gt;        {&lt;br /&gt;            VssDataSet = new DataSet();&lt;br /&gt;            CnStr =&lt;br /&gt;              ConfigurationManager.ConnectionStrings["cnStr"].ConnectionString;&lt;br /&gt;            DtaTblName = "VSS";&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public bool VssDataTableAdd()&lt;br /&gt;        {&lt;br /&gt;            bool retVal = false;&lt;br /&gt;            string errMsg = string.Empty;&lt;br /&gt;&lt;br /&gt;            if ( VssDataSet == null )&lt;br /&gt;            {&lt;br /&gt;                errMsg = "Data Set is Null, add new data table failed.";&lt;br /&gt;                MessageBox.Show( errMsg, "Error",&lt;br /&gt;                   MessageBoxButtons.OK, MessageBoxIcon.Error );&lt;br /&gt;                return retVal;&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            DataTable vssDtaTbl = new DataTable(DtaTblName);&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemEnv",&lt;br /&gt;               System.Type.GetType("System.String"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemName",&lt;br /&gt;               System.Type.GetType("System.String"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemType",&lt;br /&gt;               System.Type.GetType("System.Int32"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemVer",&lt;br /&gt;               System.Type.GetType("System.Int32"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemSpec",&lt;br /&gt;               System.Type.GetType("System.String"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemLabel",&lt;br /&gt;               System.Type.GetType("System.String"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemComment",&lt;br /&gt;               System.Type.GetType("System.String"));&lt;br /&gt;            vssDtaTbl.Columns.Add("vssItemDate",&lt;br /&gt;               System.Type.GetType("System.DateTime"));&lt;br /&gt;&lt;br /&gt;            VssDataSet.Tables.Add(vssDtaTbl);&lt;br /&gt;&lt;br /&gt;            retVal = true;&lt;br /&gt;            return retVal;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void VssGetLatest(string vssPrjPath)&lt;br /&gt;        {&lt;br /&gt;            VSSItem mainVssItem;&lt;br /&gt;            string userId = Environment.UserName;&lt;br /&gt;&lt;br /&gt;            Microsoft.VisualStudio.SourceSafe.Interop.VSSDatabaseClass&lt;br /&gt;              vssDb = new VSSDatabaseClass();&lt;br /&gt;&lt;br /&gt;            vssDb.Open(@"\\MyServer\VSS\srcsafe.ini", userId, "");&lt;br /&gt;            vssDb.CurrentProject = vssPrjPath;   // "$/MyApp/SOURCE";&lt;br /&gt;&lt;br /&gt;            mainVssItem = vssDb.get_VSSItem(vssDb.CurrentProject, false);&lt;br /&gt;            foreach (VSSItem vssSubItem in mainVssItem.get_Items(false))&lt;br /&gt;            {&lt;br /&gt;                VssItemSave(vssDb, vssSubItem);&lt;br /&gt;&lt;br /&gt;                if (vssSubItem.Type == (int)VSSItemType.VSSITEM_PROJECT)&lt;br /&gt;                    if (vssSubItem.Spec.Contains("MyApp"))&lt;br /&gt;                        VssChildGetLatest(vssDb, vssSubItem);&lt;br /&gt;&lt;br /&gt;                Application.DoEvents();&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            vssDb.Close();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private void VssChildGetLatest(&lt;br /&gt;           VSSDatabaseClass vssDb,&lt;br /&gt;           VSSItem vssItm)&lt;br /&gt;        {&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;             VSSItem vssChildItem = vssDb.get_VSSItem(vssItm.Spec, false);&lt;br /&gt;             foreach (VSSItem vssSubItem in vssChildItem.get_Items(false))&lt;br /&gt;             {&lt;br /&gt;                 VssItemSave(vssDb, vssSubItem);&lt;br /&gt;&lt;br /&gt;                 if (vssSubItem.Type == (int)VSSItemType.VSSITEM_PROJECT)&lt;br /&gt;                     if (vssSubItem.Spec.Contains("MyApp"))&lt;br /&gt;                         VssChildGetLatest(vssDb, vssSubItem);&lt;br /&gt;&lt;br /&gt;                 Application.DoEvents();&lt;br /&gt;             }&lt;br /&gt;         }&lt;br /&gt;         catch { }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public bool VssItemSave(VSSDatabaseClass vssDb, VSSItem vssItm)&lt;br /&gt;        {&lt;br /&gt;            bool retVal = true;&lt;br /&gt;&lt;br /&gt;            try&lt;br /&gt;            {&lt;br /&gt;             DataRow vssItmDtaRow = VssDataSet.Tables[DtaTblName].NewRow();&lt;br /&gt;             vssItmDtaRow["vssItemEnv"] = DtaTblName;&lt;br /&gt;             vssItmDtaRow["vssItemName"] = vssItm.Name;&lt;br /&gt;             vssItmDtaRow["vssItemType"] = vssItm.Type;&lt;br /&gt;             vssItmDtaRow["vssItemVer"] = vssItm.VersionNumber;&lt;br /&gt;             vssItmDtaRow["vssItemSpec"] = vssItm.Spec;&lt;br /&gt;&lt;br /&gt;             foreach (VSSVersion vssVersion in vssItm.get_Versions(0))&lt;br /&gt;             {&lt;br /&gt;                 if (vssVersion.VersionNumber == vssItm.VersionNumber)&lt;br /&gt;                 {&lt;br /&gt;                     vssItmDtaRow["vssItemLabel"] = vssVersion.Label;&lt;br /&gt;                     vssItmDtaRow["vssItemComment"] = vssVersion.Comment;&lt;br /&gt;                     vssItmDtaRow["vssItemDate"] = vssVersion.Date;&lt;br /&gt;                     break;&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            VssDataSet.Tables[dtaTblName].Rows.Add(vssItmDtaRow);&lt;br /&gt;        }&lt;br /&gt;        catch (Exception ex)&lt;br /&gt;        {&lt;br /&gt;            retVal = false;&lt;br /&gt;            MessageBox.Show(ex.Message);&lt;br /&gt;        }&lt;br /&gt;        return retVal;&lt;br /&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/2648132302968261880-5927034146567629264?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5927034146567629264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5927034146567629264' title='24 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5927034146567629264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5927034146567629264'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/06/visual-source-safe-recursive-get-items.html' title='Visual Source Safe - Recursive get items'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>24</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7715268731575341251</id><published>2010-05-23T00:44:00.001-07:00</published><updated>2010-05-23T00:44:50.992-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio - Search order for assemblies</title><content type='html'>Search order for assemblies when building a project of a solution in Visual Studio:&lt;br /&gt;&lt;br /&gt;    * Files from the current project indicated by {CandidateAssemblyFiles}.&lt;br /&gt;    * $(ReferencePath) property that comes from .user/targets file.&lt;br /&gt;    * $(HintPath) indicated by reference item.&lt;br /&gt;    * Target framework directory.&lt;br /&gt;    * Directories found in registry that uses AssemblyFoldersEx Registration.&lt;br /&gt;    * Registered assembly folders, indicated by {AssemblyFolders}.&lt;br /&gt;    * $(OutputPath) or $(OutDir)&lt;br /&gt;    * GAC&lt;br /&gt;&lt;br /&gt;If the desired assembly is found by HintPath, but an alternate assembly can be found using ReferencePath, it will prefer the ReferencePath to the HintPath one.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7715268731575341251?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7715268731575341251/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7715268731575341251' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7715268731575341251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7715268731575341251'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/05/visual-studio-search-order-for.html' title='Visual Studio - Search order for assemblies'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1931037015261743029</id><published>2010-05-23T00:33:00.000-07:00</published><updated>2010-05-23T00:35:00.315-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio - Specify assemblies location by registry key</title><content type='html'>- Open registry by Regedit&lt;br /&gt;- Search for following key (Depend on VS version use the correct number to point to this key in registry):&lt;br /&gt;[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\AssemblyFolders]&lt;br /&gt;- Set the value of the key [AssemblyFolders] of type REG_SZ to the path of your assemblies.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1931037015261743029?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1931037015261743029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1931037015261743029' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1931037015261743029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1931037015261743029'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/05/visual-studio-specify-assemblies.html' title='Visual Studio - Specify assemblies location by registry key'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4187421895571583585</id><published>2010-05-22T23:20:00.000-07:00</published><updated>2010-05-23T00:24:29.500-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'> to specify where Visual Studio search for the assemblies which you reference in your project</title><content type='html'>Unfortunately Visual Studio doesn't allow you to edit &lt;HintPath&gt; to reference assemblies, then you need to open the project file by a text editor and directly edit the &lt;HintPath&gt; ta and save the project file. When Visual studio detects the file change, it will ask you to reload the file.&lt;br /&gt;&lt;br /&gt;Example:&lt;div class="mycode"&gt;&amp;lt;Reference Include=&amp;quot;YourAssembly.dll&amp;quot;&amp;gt;&lt;br /&gt;   &amp;lt;SpecificVersion&amp;gt;False&amp;lt;/SpecificVersion&amp;gt;&lt;br /&gt;   &amp;lt;HintPath&amp;gt;C:\CommonAssemblies\YourAssembly.dll&amp;lt;/HintPath&amp;gt;&lt;br /&gt;&amp;lt;/Reference&amp;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/2648132302968261880-4187421895571583585?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4187421895571583585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4187421895571583585' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4187421895571583585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4187421895571583585'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/05/to-specify-where-visual-studio-search.html' title='&lt;HintPath&gt; to specify where Visual Studio search for the assemblies which you reference in your project'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3848433788642927057</id><published>2010-05-09T23:05:00.000-07:00</published><updated>2010-05-09T23:06:32.770-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>Rounding line T-SQL in .NET</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3848433788642927057?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3848433788642927057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3848433788642927057' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3848433788642927057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3848433788642927057'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/05/rounding-line-t-sql-in-net.html' title='Rounding line T-SQL in .NET'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7924398906656759732</id><published>2010-05-04T23:31:00.000-07:00</published><updated>2010-05-04T23:32:44.660-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>T-SQL Object types in sysobjects (xtype column)</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7924398906656759732?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7924398906656759732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7924398906656759732' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7924398906656759732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7924398906656759732'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/05/t-sql-object-types-in-sysobjects-xtype.html' title='T-SQL Object types in sysobjects (xtype column)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3550866709968829936</id><published>2010-04-26T23:24:00.001-07:00</published><updated>2010-04-26T23:24:49.897-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>Dynamic SQL with iBatis</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3550866709968829936?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3550866709968829936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3550866709968829936' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3550866709968829936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3550866709968829936'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/04/dynamic-sql-with-ibatis.html' title='Dynamic SQL with iBatis'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4914900585933730247</id><published>2010-04-25T22:23:00.000-07:00</published><updated>2010-04-25T22:37:18.095-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Smartphone'/><title type='text'>iPhone - Apple's NDA-protected license agreement changed in April 2010</title><content type='html'>The original clause stated:&lt;br /&gt;&lt;br /&gt;    3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.&lt;br /&gt;&lt;br /&gt;The new version of 3.3.1 reads:&lt;br /&gt;&lt;br /&gt;    3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).&lt;br /&gt;&lt;br /&gt;It means frustrating news for developers with lot more restrictions to develop applications on iPhone. Then developers can no longer use software like Novell's &lt;a href="http://monotouch.net/"&gt;MonoTouch&lt;/a&gt;, Unity3D, or Ansca's Corona to develop iPhone applications, and tools like Appcelerator's Titanium and PhoneGap are looking uncertainty. Generally it restricts users from utilizing different programming languages, libraries, and tools.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4914900585933730247?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4914900585933730247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4914900585933730247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4914900585933730247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4914900585933730247'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/04/iphone-apples-nda-protected-license.html' title='iPhone - Apple&apos;s NDA-protected license agreement changed in April 2010'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8823979534301112522</id><published>2010-04-19T22:59:00.000-07:00</published><updated>2010-04-19T23:01:18.233-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>NUnit - Unit Testing</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8823979534301112522?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8823979534301112522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8823979534301112522' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8823979534301112522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8823979534301112522'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/04/nunit-unit-testing.html' title='NUnit - Unit Testing'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2458705660730641900</id><published>2010-02-21T15:24:00.000-08:00</published><updated>2010-02-21T15:31:27.642-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - send email by SmtpClient using Gmail SMTP</title><content type='html'>&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;using System.Net.Mail;&lt;br /&gt;using System.Net;&lt;br /&gt;...&lt;br /&gt;//create the mail message&lt;br /&gt;MailMessage mail = new MailMessage();&lt;br /&gt;&lt;br /&gt;//set the addresses&lt;br /&gt;mail.From = new MailAddress("me@sampleApp.com");&lt;br /&gt;mail.To.Add("you@sampleApp.com");&lt;br /&gt;&lt;br /&gt;//set the content&lt;br /&gt;mail.Subject = "C# mail - Sent by System.Net.Mail";&lt;br /&gt;mail.Body = "this is the body content of the email.";&lt;br /&gt;mail.BodyEncoding = UTF8Encoding.UTF8;&lt;br /&gt;            &lt;br /&gt;// Delivery notification setting&lt;br /&gt;mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;&lt;br /&gt;            &lt;br /&gt;// SMTP client settings&lt;br /&gt;SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);&lt;br /&gt;smtp.EnableSsl = true;&lt;br /&gt;smtp.Timeout = 10000;&lt;br /&gt;smtp.DeliveryMethod = SmtpDeliveryMethod.Network;&lt;br /&gt;smtp.UseDefaultCredentials = false;&lt;br /&gt;smtp.Credentials = new NetworkCredential("iborn2code", "farhad2006");&lt;br /&gt;&lt;br /&gt;//send the message&lt;br /&gt;smtp.Send(mail);&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/2648132302968261880-2458705660730641900?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2458705660730641900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2458705660730641900' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2458705660730641900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2458705660730641900'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/02/c-send-email-by-smtpclient-using-gmail.html' title='C# - send email by SmtpClient using Gmail SMTP'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5969633780929257469</id><published>2010-02-16T19:45:00.000-08:00</published><updated>2010-02-16T20:17:04.828-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Windows Phone 7 Series</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/S3tqEVaWhVI/AAAAAAAAAKM/J6-x879NiMY/s1600-h/WindowsPhone7.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 60px; height: 362px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/S3tqEVaWhVI/AAAAAAAAAKM/J6-x879NiMY/s400/WindowsPhone7.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5439057597679699282" /&gt;&lt;/a&gt;&lt;br /&gt;During the Mobile World Congress 2010 in Barcelona, Microsoft revealed details of Windows Phone 7 Series&lt;br /&gt;In a nutshell, Xbox Live games and Zune music are now features of Windows Phone 7. These phones arrive by holiday 2010 (may be it's too late).&lt;br /&gt;&lt;br /&gt;With the specification requiring all Windows Phone 7 Series devices to feature three buttons, Back button, Start button and Search button. On the other hand, HTC released three new phones and proclaimed the company's commitment to Windows Phone 7 on Tuesday (Feb 16, 2010).&lt;br /&gt;&lt;br /&gt;About hardware requirements, No mention has been made of the underlying hardware, although in one of the videos on the Series 7 YouTube page, a Qualcomm representative talks about its Snapdragon chip, a 1GHz ARM-based chip that currently powers Google’s Nexus One.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.windowsphone7series.com/"&gt;Windows Phone 7 Series&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/windowsmobile/en-us/default.mspx"&gt;Windows Mobile&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.fonehome.co.uk/2010/02/windows-phone-7-series-%E2%80%93-picture-gallery/wm722/"&gt;Image gallery&lt;/a&gt;&lt;br /&gt;&lt;a href="http://content.zdnet.com/2346-17932_22-393828-8.html?tag=content;col1"&gt;Picture gallery&lt;/a&gt;&lt;br /&gt;&lt;a href="http://channel9.msdn.com/posts/LauraFoy/First-Look-Windows-Phone-7-Series-Hands-on-Demo/"&gt;A 22 minutes demo about Windows Mobile 7&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5969633780929257469?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5969633780929257469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5969633780929257469' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5969633780929257469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5969633780929257469'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/02/windows-phone-7.html' title='Windows Phone 7 Series'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/S3tqEVaWhVI/AAAAAAAAAKM/J6-x879NiMY/s72-c/WindowsPhone7.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8617826601117597341</id><published>2010-02-16T18:52:00.000-08:00</published><updated>2010-02-16T18:56:24.957-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Version control'/><title type='text'>RollBack in VSS when you don't have rollback permission</title><content type='html'>When you don't have rollback permission, you can replace a version of file with the new version and keep the project running safely.&lt;br /&gt;&lt;br /&gt;It's based on Visual Source Safe but the idea is simply general.&lt;br /&gt;&lt;br /&gt;• Select the file in VSS Explorer. &lt;br /&gt;• Check out the file using the Check Out command on the SourceSafe menu or by right clicking on the file and choosing the command from the context menu.&lt;br /&gt;• Choose Show History from the Tools menu.&lt;br /&gt;•  To show the History of File, click OK.&lt;br /&gt;• Select a file version which you want to back to and click on Get. &lt;br /&gt;• In the Get dialog box, click OK. &lt;br /&gt;• In response to the message asking whether to replace the checked out file, click on Replace. &lt;br /&gt;• Click Close to quit the History of File dialog box. &lt;br /&gt;• Use Check In command on the SourceSafe menu or from context menu which appears by right clicking.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8617826601117597341?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8617826601117597341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8617826601117597341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8617826601117597341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8617826601117597341'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/02/rollback-in-vss-when-you-dont-have.html' title='RollBack in VSS when you don&apos;t have rollback permission'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4394131717538045096</id><published>2010-02-16T18:27:00.000-08:00</published><updated>2010-02-16T18:35:40.770-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>VS 2008 - Microsoft.VisualStudio.DataDesign.SyncDesigner.SyncFacade.SyncManager Error</title><content type='html'>I experience the following error message when I wanted to get connected to a database on a SQL 2008 Express from a machine with a newly installed Visual Studio 2008.&lt;br /&gt;&lt;br /&gt;When I tried "Add New Data Source" and after creating connection string at the time of proceeding to finalize the connection, the Error Message came up:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Could not load type 'Microsoft.VisualStudio.DataDesign.SyncDesigner.SyncFacade.SyncManager' from assembly 'Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage.Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The simple solution which worked for me was installing &lt;span style="font-weight:bold;"&gt;VS 2008 SP1&lt;/span&gt;, at this moment it's available at:&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/en/confirmation.aspx?familyId=fbee1648-7106-44a7-9649-6d9f6d58056e&amp;displayLang=en"&gt;http://www.microsoft.com/downloads/en/confirmation.aspx?familyId=fbee1648-7106-44a7-9649-6d9f6d58056e&amp;displayLang=en&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4394131717538045096?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4394131717538045096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4394131717538045096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4394131717538045096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4394131717538045096'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/02/vs-2008-microsoftvisualstudiodatadesign.html' title='VS 2008 - Microsoft.VisualStudio.DataDesign.SyncDesigner.SyncFacade.SyncManager Error'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4943675301311492700</id><published>2010-01-31T22:54:00.000-08:00</published><updated>2010-01-31T22:55:12.476-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL - Cross Apply</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4943675301311492700?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4943675301311492700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4943675301311492700' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4943675301311492700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4943675301311492700'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/01/sql-cross-apply.html' title='SQL - Cross Apply'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3923493496460961378</id><published>2010-01-29T22:02:00.000-08:00</published><updated>2010-01-29T22:03:20.573-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Call method of a string namespace</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3923493496460961378?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3923493496460961378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3923493496460961378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3923493496460961378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3923493496460961378'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/01/c-call-method-of-string-namespace.html' title='C# - Call method of a string namespace'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7914479458937032054</id><published>2010-01-08T22:24:00.001-08:00</published><updated>2010-01-08T22:24:58.320-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>.NET - Hashtable vs ArrayList</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7914479458937032054?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7914479458937032054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7914479458937032054' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7914479458937032054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7914479458937032054'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2010/01/net-hashtable-vs-arraylist.html' title='.NET - Hashtable vs ArrayList'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3893631756170000966</id><published>2009-12-29T21:54:00.000-08:00</published><updated>2009-12-29T21:55:30.892-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='XML-XSD-XSLT'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - XPathNavigator class to navigate XML</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3893631756170000966?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3893631756170000966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3893631756170000966' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3893631756170000966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3893631756170000966'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/12/c-xpathnavigator-class-to-navigate-xml.html' title='C# - XPathNavigator class to navigate XML'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2942599647017103754</id><published>2009-12-16T22:44:00.001-08:00</published><updated>2009-12-16T22:44:53.974-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>T-SQL - Synonyms</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2942599647017103754?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2942599647017103754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2942599647017103754' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2942599647017103754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2942599647017103754'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/12/t-sql-synonyms.html' title='T-SQL - Synonyms'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5617839600263077200</id><published>2009-12-12T17:41:00.000-08:00</published><updated>2009-12-12T17:47:09.505-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio - Import and Export Settings</title><content type='html'>As you know we can customizing the IDE in Visual Studio, if you change the place of toolbox, properties window, server explorer, or some other features, you can save your setting to keep it for later and if you need to move to another machine or setting back to this point either if you changed something more and you didn't like it, just simply bring it back to your saved settings.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SyRG7DMYRnI/AAAAAAAAAJk/NrJgTA6S7wM/s1600-h/VS2008-ImpoertExportSettings-Exp01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 397px; height: 400px;" src="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SyRG7DMYRnI/AAAAAAAAAJk/NrJgTA6S7wM/s400/VS2008-ImpoertExportSettings-Exp01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5414530632289633906" /&gt;&lt;/a&gt;&lt;br /&gt;General settings, Browsers, Start page commands, Toolbox, help filters, options, and ... are all customizable and possible to save them all and assign a name to this set.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SyRHDDl1DNI/AAAAAAAAAJs/qh0NRVe5M3U/s1600-h/VS2008-ImpoertExportSettings-Exp02.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 397px; height: 400px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SyRHDDl1DNI/AAAAAAAAAJs/qh0NRVe5M3U/s400/VS2008-ImpoertExportSettings-Exp02.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5414530769835330770" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;On the other hand, we can reload pre saved settings,&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SyRHImRq2II/AAAAAAAAAJ0/j5cOh0pLWpA/s1600-h/VS2008-ImpoertExportSettings-Imp01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 397px; height: 400px;" src="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SyRHImRq2II/AAAAAAAAAJ0/j5cOh0pLWpA/s400/VS2008-ImpoertExportSettings-Imp01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5414530865045362818" /&gt;&lt;/a&gt;&lt;br /&gt;Good naming for saved settings will help a lot at this point&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/SyRHO9qP62I/AAAAAAAAAJ8/rdPnlW4KBrE/s1600-h/VS2008-ImpoertExportSettings-Imp02.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 397px; height: 400px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/SyRHO9qP62I/AAAAAAAAAJ8/rdPnlW4KBrE/s400/VS2008-ImpoertExportSettings-Imp02.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5414530974401686370" /&gt;&lt;/a&gt;&lt;br /&gt;And at last we can reset all the customized settings to default state.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SyRHURsmwSI/AAAAAAAAAKE/1RizzRaKyxo/s1600-h/VS2008-ImpoertExportSettings-Reset01.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 397px; height: 400px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SyRHURsmwSI/AAAAAAAAAKE/1RizzRaKyxo/s400/VS2008-ImpoertExportSettings-Reset01.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5414531065679626530" /&gt;&lt;/a&gt;&lt;br /&gt;This feature is very useful but somehow hidden, customizing the environment will hep your productivity, then just using it and make it work the way you want it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5617839600263077200?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5617839600263077200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5617839600263077200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5617839600263077200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5617839600263077200'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/12/visual-studio-import-and-export.html' title='Visual Studio - Import and Export Settings'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e4Tel4Sa2XA/SyRG7DMYRnI/AAAAAAAAAJk/NrJgTA6S7wM/s72-c/VS2008-ImpoertExportSettings-Exp01.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2775023075079058025</id><published>2009-12-11T21:31:00.001-08:00</published><updated>2009-12-11T21:31:31.037-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>T-SQL COALESCE</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2775023075079058025?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2775023075079058025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2775023075079058025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2775023075079058025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2775023075079058025'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/12/t-sql-coalesce.html' title='T-SQL COALESCE'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4422813877674958681</id><published>2009-11-18T16:15:00.000-08:00</published><updated>2009-11-18T16:22:46.728-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XAML-Silverlight-WPF'/><title type='text'>Silverlight 4 Beta - developer release</title><content type='html'>&lt;a href="http://silverlight.net/getstarted/silverlight-4-beta/"&gt;http://silverlight.net/getstarted/silverlight-4-beta/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;"This latest version delivers hundreds of features and controls that, when combined with the continued innovation in Microsoft’s world-class tools for designers and developers — Microsoft Visual Studio and Microsoft Expression Blend – present the leading edge in rapid, powerful application development. With printing support, rich reporting and charting, and integration with back-end systems and server products including Microsoft SharePoint, Silverlight is ready for business."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;"IMPORTANT DEVELOPER NOTE:&lt;br /&gt;&lt;br /&gt;Visual Studio 2010 can be installed side-by-side with Visual Studio 2008 SP1. For Silverlight 4 development, you will need Visual Studio 2010. &lt;a href="http://blogs.msdn.com/amyd/archive/2009/10/21/visual-studio-2010-and-silverlight-3-sdk.aspx"&gt;Please read the known issue on installing Visual Studio 2010 if you already have the Silverlight 3 SDK installed&lt;/a&gt;."&lt;br /&gt;&lt;br /&gt;Videos and Samples&lt;br /&gt;&lt;a href="http://silverlight.net/learn/videos/silverlight-4-beta-videos/"&gt;http://silverlight.net/learn/videos/silverlight-4-beta-videos/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4422813877674958681?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4422813877674958681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4422813877674958681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4422813877674958681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4422813877674958681'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/11/silverlight-4-beta-developer-release.html' title='Silverlight 4 Beta - developer release'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1348938202387961616</id><published>2009-11-08T12:35:00.000-08:00</published><updated>2009-11-08T12:36:06.619-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>T-SQL - NULL does not equal NULL</title><content type='html'>Be careful of this when coding. NULL does not equal NULL, you can test it with following code, weird? No! because NULL does not present a value to be able to be equal to another value!&lt;div class="mycode"&gt;&lt;br /&gt;IF (NULL=NULL)&lt;br /&gt; PRINT 'NULL is equal to NULL'&lt;br /&gt;ELSE&lt;br /&gt; PRINT 'NULL is not equal to NULL !'&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/2648132302968261880-1348938202387961616?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1348938202387961616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1348938202387961616' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1348938202387961616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1348938202387961616'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/11/t-sql-null-does-not-equal-null.html' title='T-SQL - NULL does not equal NULL'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8621276607545469753</id><published>2009-11-07T22:56:00.001-08:00</published><updated>2009-11-08T12:25:55.878-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>T-SQL - Aggregate functions and NULL values in numeric fields</title><content type='html'>Except COUNT(*), all other aggregate functions ignore NULLs. As an example if you have NULL value in a numeric field, the NULL value does not equal to zero. Look at the following code, it shows the AVG function ignores the records which their specific column has NULL value.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;CREATE TABLE theTable&lt;br /&gt;(&lt;br /&gt;theId int IDENTITY NOT NULL,&lt;br /&gt;theValue DECIMAL(10,2) NULL&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;INSERT INTO theTable&lt;br /&gt;(theValue)&lt;br /&gt;VALUES&lt;br /&gt;(NULL), (0), (1), (2), (3), (NULL)&lt;br /&gt;&lt;br /&gt;SELECT AVG(theValue) as AverageValue&lt;br /&gt;FROM theTable&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The result is &lt;B&gt;1.500000&lt;/B&gt;&lt;br /&gt;&lt;br /&gt;It's important when you want to design your database and tables, because it will affect the queries result when you run them against the database.&lt;br /&gt;&lt;br /&gt;On the other hand, it's possible to consider COALESCE function (&lt;a href="http://msdn.microsoft.com/en-us/library/ms190349.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms190349.aspx&lt;/a&gt;), it gives you a chance to select first non NULL expression among its arguments. Then you can send multiple field names and let the COALESCE find the first non NULL value for your aggregate function, it can be happen if you have alternative field but it's tricky and depends on business rules in your application.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8621276607545469753?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8621276607545469753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8621276607545469753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8621276607545469753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8621276607545469753'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/11/t-sql-aggregate-functions-and-null.html' title='T-SQL - Aggregate functions and NULL values in numeric fields'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6194551450455389401</id><published>2009-10-26T00:04:00.000-07:00</published><updated>2009-10-26T00:06:49.148-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML-XHTML-CSS'/><title type='text'>ASP.NET - CSS ID selector vs. CSS class for custom server controls</title><content type='html'>To have a common use control, we do create custom ASP.NET server controls.&lt;br /&gt;As a simple example let's have a side bar control. To do that, Add a Web User Control, it has .ascx extention and call it sideBarList.&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;%@ Control Language=&amp;quot;C#&amp;quot; AutoEventWireup=&amp;quot;true&amp;quot;&lt;br /&gt;CodeBehind=&amp;quot;sideBarList.ascx.cs&amp;quot;&lt;br /&gt;Inherits=&amp;quot;AspAdvWrk01.sideBarList&amp;quot; %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;asp:Panel ID=&amp;quot;srchEnginePnl&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;    &amp;lt;h4&amp;gt;Search Engines:&amp;lt;/h4&amp;gt;&lt;br /&gt;    &amp;lt;a href=&amp;quot;http://www.bing.com/&amp;quot;&amp;gt;bing&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;a href=&amp;quot;http://www.google.ca/&amp;quot;&amp;gt;Google&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;a href=&amp;quot;http://m.www.yahoo.com/&amp;quot;&amp;gt;Yahoo&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;a href=&amp;quot;http://www.msn.com/&amp;quot;&amp;gt;MSN&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;a href=&amp;quot;http://www.altavista.com/&amp;quot;&amp;gt;Altavista&amp;lt;/a&amp;gt;&lt;br /&gt;&amp;lt;/asp:Panel&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Then let's add the following CSS codes in a style sheet:&lt;div class="mycode"&gt;&lt;br /&gt;#srchEnginePnl&lt;br /&gt;{&lt;br /&gt; border-style:dotted;&lt;br /&gt; border-width:1px;&lt;br /&gt; padding: 5px;&lt;br /&gt; font-size:small;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;I tried the same ID name of asp Panel control in this style sheet as a CSS ID selector, To apply style to the asp Panel control with ID name of srchEnginePnl. Even though that we have CSS ID selector but it doesn't apply any style because the real ID name in HTML page is something else which you can find it by checking the html source of the page in your browser (in the test page it was #ctl00_ContentPlaceHolder1_sideBarList1_srchEnginePnl).&lt;br /&gt;&lt;br /&gt;The solution, a CSS class selector and utilizing CssClass attribute as following:&lt;div class="mycode"&gt;&lt;br /&gt;.srchEnginePnl&lt;br /&gt;{&lt;br /&gt; border-style:dotted;&lt;br /&gt; border-width:1px;&lt;br /&gt; padding: 5px;&lt;br /&gt; font-size:small;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;a.srchEnginePnl&lt;br /&gt;{&lt;br /&gt; padding: 10px;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;&amp;lt;asp:Panel ID=&amp;quot;srchEnginePnl&amp;quot; CssClass=&amp;quot;srchEnginePnl&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;otherwise you have to use the real ID of your panel control in html source and use that ID name to define the ID CSS selector in your style sheet:&lt;div class="mycode"&gt;&lt;br /&gt;#ctl00_ContentPlaceHolder1_sideBarList1_srchEnginePnl&lt;br /&gt;{&lt;br /&gt; border-style:dotted;&lt;br /&gt; border-width:1px;&lt;br /&gt; padding: 5px;&lt;br /&gt; font-size:small;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;&amp;lt;asp:Panel ID=&amp;quot;srchEnginePnl&amp;quot; runat=&amp;quot;server&amp;quot;&amp;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/2648132302968261880-6194551450455389401?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6194551450455389401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6194551450455389401' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6194551450455389401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6194551450455389401'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/aspnet-css-id-selector-vs-css-class-for.html' title='ASP.NET - CSS ID selector vs. CSS class for custom server controls'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-745987796046017240</id><published>2009-10-25T22:01:00.000-07:00</published><updated>2009-10-25T22:10:15.787-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio 2010 and .NET Framework 4 Training Course</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SuUvKbFCNpI/AAAAAAAAAJc/UGsWcOTMYJ4/s1600-h/channel9.msdn.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 100px; height: 120px;" src="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SuUvKbFCNpI/AAAAAAAAAJc/UGsWcOTMYJ4/s400/channel9.msdn.jpg" alt="" id="BLOGGER_PHOTO_ID_5396771584587478674" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;Links to new Interview videos and How Do I clips and new posts about Visual Studio 2010 Beta2 in Channel 9.&lt;br /&gt;&lt;/span&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;&lt;a href="http://channel9.msdn.com/learn/courses/VS2010/"&gt;http://channel9.msdn.com/learn/courses/VS2010/&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;"The Visual Studio 2010 and .NET Framework 4 Training Course includes videos and hands-on-labs designed to help you learn how to utilize the Visual Studio 2010 features and a variety of framework technologies including:&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;C# 4.0&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;Visual Basic 10&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;F#&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;Parallel Computing Platform&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;WCF&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;WF&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;WPF&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;ASP.NET AJAX 4.0&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;ASP.NET MVC Dynamic Data."&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span id="ctl00_MainPlaceHolder_DescriptionLabel" class="description"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-745987796046017240?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/745987796046017240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=745987796046017240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/745987796046017240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/745987796046017240'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/visual-studio-2010-and-net-framework-4_25.html' title='Visual Studio 2010 and .NET Framework 4 Training Course'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e4Tel4Sa2XA/SuUvKbFCNpI/AAAAAAAAAJc/UGsWcOTMYJ4/s72-c/channel9.msdn.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6854178697106073734</id><published>2009-10-20T00:49:00.000-07:00</published><updated>2009-10-20T01:00:08.614-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio 2010 and .NET Framework 4 Beta 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/St1sotnTdbI/AAAAAAAAAJU/xlnC14BcXlc/s1600-h/vs2010_logo.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 183px; height: 98px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/St1sotnTdbI/AAAAAAAAAJU/xlnC14BcXlc/s400/vs2010_logo.png" alt="" id="BLOGGER_PHOTO_ID_5394587375354738098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The Visual Studio 2010 and .NET Framework Beta 2 is available to MSDN subscribers on Monday, October 19th. &lt;span&gt;&lt;span&gt;&lt;span class="IL_SPAN"&gt;Visual Studio&lt;/span&gt;&lt;span&gt; 2010 Beta 2 and Dot &lt;span class="IL_SPAN"&gt;&lt;input name="IL_MARKER" type="hidden"&gt;Net framework&lt;/span&gt; 4 Beta 2 will be made available to the general public on 21st October.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; Users will be able to get their hands on the final version of Visual Studio 2010 on 22nd March 2010.&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Visual Studio 2010 and .NET Framework 4 Beta 2 Walkthroughs&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Testers to get Visual Studio 2010 Beta 2 this week; final by March 2010&lt;br /&gt;&lt;a href="http://blogs.zdnet.com/microsoft/?p=4270&amp;amp;tag=content;col1"&gt;http://blogs.zdnet.com/microsoft/?p=4270&amp;amp;tag=content;col1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Other links:&lt;br /&gt;Microsoft names Visual Studio 2010 dates&lt;br /&gt;&lt;a href="http://www.theregister.co.uk/2009/10/19/visual_studio_2010_second_beta_packaging/"&gt;http://www.theregister.co.uk/2009/10/19/visual_studio_2010_second_beta_packaging/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/default.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/visualstudio/en-us/products/2010/default.mspx"&gt;http://www.microsoft.com/visualstudio/en-us/products/2010/default.mspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6854178697106073734?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6854178697106073734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6854178697106073734' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6854178697106073734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6854178697106073734'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/visual-studio-2010-and-net-framework-4.html' title='Visual Studio 2010 and .NET Framework 4 Beta 2'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/St1sotnTdbI/AAAAAAAAAJU/xlnC14BcXlc/s72-c/vs2010_logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7035364800260164570</id><published>2009-10-11T23:51:00.001-07:00</published><updated>2009-10-12T00:01:38.357-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio - An error occurred loading this property page</title><content type='html'>If you found out that the "Design, Split, Source" buttons are not available anymore, your first reaction would be to take a look at Tools-&gt;Options-&gt;HTML Designer, at this point probably you encounter with this error message:&lt;br /&gt;"An error occurred loading this property page"&lt;br /&gt;&lt;br /&gt;I encountered with the error and it was resolved by running "devenv /setup" in Visual Studio 2008 Command Prompt and restarting Visual Studio. The "Design, Split, Source" buttons came back to the right place after running that command.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7035364800260164570?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7035364800260164570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7035364800260164570' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7035364800260164570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7035364800260164570'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/visual-studio-error-occurred-loading.html' title='Visual Studio - An error occurred loading this property page'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8572906227624034237</id><published>2009-10-10T23:44:00.000-07:00</published><updated>2009-10-11T00:04:08.439-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='DataGridView'/><title type='text'>ASP.NET - Image handler to fetch and show Images from varbinary(MAX)</title><content type='html'>Imagine you want to get images from [Production].[ProductProductPhoto] table in AdventureWorks SQL sample database. The following code can be in a generic handler (.ashx) file.&lt;div class="mycode"&gt;&lt;br /&gt;public class ImgHandler : IHttpHandler&lt;br /&gt;{&lt;br /&gt;private string sqlCnStr =&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;ConfigurationManager.ConnectionStrings["CnStrAdvWrk"].ConnectionString;&lt;br /&gt;&lt;br /&gt;public void ProcessRequest(HttpContext context)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;string productId = context.Request.QueryString["PrdId"];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (string.IsNullOrEmpty(productId))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;productId = "1";&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;using (SqlConnection sqlCn = new SqlConnection(sqlCnStr))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;StringBuilder cmd = new StringBuilder();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append("SELECT PrdPhoto.[ThumbNailPhoto] as PrdPhoto ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append(" FROM [Production].[Product] as Prd ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append(" JOIN [Production].[ProductProductPhoto] as PPrdPhoto ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append("     ON Prd.ProductID = PrdPrdPhoto.ProductID ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append(" JOIN [Production].[ProductPhoto] as PPhoto ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append("     ON PPrdPhoto.ProductPhotoID = PPhoto.ProductPhotoID ");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;cmd.Append(" WHERE Prd.[ProductID] = " + productId);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sqlCn.Open();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;SqlCommand sqlCmd = new SqlCommand(cmd.ToString(), sqlCn);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;SqlDataReader sqlDtaRdr = sqlCmd.ExecuteReader();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sqlDtaRdr.Read();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.Response.BinaryWrite( (byte[]) sqlDtaRdr[0] );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;sqlCn.Close();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;context.Response.End();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;public bool IsReusable&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;get { return false; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Now you just need to call the handler.&lt;br /&gt;&lt;br /&gt;If you have an image control and you know the ProductId:&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;asp:Image ID="Image1" runat="server"&lt;br /&gt;ImageUrl="~/ImgHandler.ashx?PrdId=1" /&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;or if you have a GridView and you want to have a column with product images, then you can use TemplateField with and Image control inside the ItemTemplate:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;asp:TemplateField HeaderText="Image"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ItemTemplate&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;asp:Image ID="Image1" runat="server"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ImageUrl='&amp;lt;%# "ImgHandler.ashx?PrdId=" + Eval("PrdId") %&amp;gt;' /&amp;gt;'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/ItemTemplate&amp;gt;&lt;br /&gt;&amp;lt;/asp:TemplateField&amp;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/2648132302968261880-8572906227624034237?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8572906227624034237/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8572906227624034237' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8572906227624034237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8572906227624034237'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/aspnet-image-handler-to-fetch-and-show.html' title='ASP.NET - Image handler to fetch and show Images from varbinary(MAX)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6823065515423558567</id><published>2009-10-07T15:03:00.000-07:00</published><updated>2009-10-07T15:07:03.072-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>Error 2738 - during installation of Adventure Works sample databases on Vista</title><content type='html'>Well, I downloaded Adventure Works sample databases from the &lt;a href="http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34032"&gt;here&lt;/a&gt;&lt;br /&gt;but I encountered with error 2738 during installation.&lt;br /&gt;&lt;br /&gt;I found the solution by a post in Mitch Denny blog:&lt;br /&gt;&lt;a href="http://notgartner.wordpress.com/2008/07/12/the-error-code-is-2738/"&gt;http://notgartner.wordpress.com/2008/07/12/the-error-code-is-2738/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In brief the solution was to register VBSCRIPT.DLL on Vista which is not registered by default.&lt;br /&gt;- Run "Command Prompt" as administrator&lt;br /&gt;- Switch to "C:\WINDOWS\SysWOW64"&lt;br /&gt;- Execute "REGSVR32.EXE VBSCRIPT.DLL"&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/Ss0QyLX6wrI/AAAAAAAAAJM/m7Q2EWz9gPE/s1600-h/2009-10-07-VDSCRIPT.DLL-registered.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 187px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/Ss0QyLX6wrI/AAAAAAAAAJM/m7Q2EWz9gPE/s400/2009-10-07-VDSCRIPT.DLL-registered.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5389982783264965298" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6823065515423558567?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6823065515423558567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6823065515423558567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6823065515423558567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6823065515423558567'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/error-2738-during-installation-of.html' title='Error 2738 - during installation of Adventure Works sample databases on Vista'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e4Tel4Sa2XA/Ss0QyLX6wrI/AAAAAAAAAJM/m7Q2EWz9gPE/s72-c/2009-10-07-VDSCRIPT.DLL-registered.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8737473202397045425</id><published>2009-10-06T14:41:00.000-07:00</published><updated>2009-10-06T14:42:48.170-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='DataGridView'/><title type='text'>ASP.NET - Do you need a GridView with scroll bars?</title><content type='html'>If you are looking for a GridView control that scrolls inside a web page, well, it's simple.&lt;br /&gt;- Add a panel control&lt;br /&gt;- Place the GridView control inside the Panel&lt;br /&gt;- Set the panel size&lt;br /&gt;- Set the Panel.Scrollbars property to Vertical, Auto, or Both!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8737473202397045425?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8737473202397045425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8737473202397045425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8737473202397045425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8737473202397045425'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/10/aspnet-do-you-need-gridview-with-scroll.html' title='ASP.NET - Do you need a GridView with scroll bars?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8505493323571080394</id><published>2009-09-20T23:25:00.000-07:00</published><updated>2009-09-22T10:33:52.898-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML-XHTML-CSS'/><title type='text'>CSS - height loose when all elements are float in a &lt;div&gt; block</title><content type='html'>When all the elements in a &amp;lt;div&amp;gt; block are float, Firefox can't keep the height of block, in this example the border appears just on top side:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.01//EN&amp;quot;&lt;br /&gt;&amp;quot;http://www.w3.org/TR/html4/strict.dtd&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;content=&amp;quot;text/html; charset=iso-8859-1&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;title&amp;gt;height loose&amp;lt;/title&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt; &lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div style=&amp;quot;margin:auto;width:350px;border:5px solid #CCC;&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;img style=&amp;quot;float:left;margin-top:0.5em&amp;quot; src=&amp;quot;Design.jpg&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;span style=&amp;quot;float:right;margin-top:1em; margin-right:0.5em&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;b&amp;gt;Development&amp;lt;/b&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Srccs9I_YUI/AAAAAAAAAI8/EpNcpaMfa3U/s1600-h/2009-09-20-DesignDevJustTopBorder.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 390px; height: 100px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Srccs9I_YUI/AAAAAAAAAI8/EpNcpaMfa3U/s400/2009-09-20-DesignDevJustTopBorder.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5383803438196810050" /&gt;&lt;/a&gt;&lt;br /&gt;To solve the problem, it's necessary to explicitly set the height of block and it's better to use em for height size unit cuz of covering different font size of contents:&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#hdr {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;height: 4em;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/style&amp;gt;&lt;br /&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div id=&amp;quot;hdr&amp;quot; style=&amp;quot;margin:auto;width:350px;border:5px solid #CCC;&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SrcdEN5UDbI/AAAAAAAAAJE/lZL013wSvYQ/s1600-h/2009-09-20-DesignDevWithBorder.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 390px; height: 100px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SrcdEN5UDbI/AAAAAAAAAJE/lZL013wSvYQ/s400/2009-09-20-DesignDevWithBorder.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5383803837831450034" /&gt;&lt;/a&gt;&lt;br /&gt;IE doesn't show such a behavior, it's yet another place that coder should consider cross browser development techniques.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8505493323571080394?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8505493323571080394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8505493323571080394' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8505493323571080394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8505493323571080394'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/css-height-loose-when-all-elements-are.html' title='CSS - height loose when all elements are float in a &amp;lt;div&amp;gt; block'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/Srccs9I_YUI/AAAAAAAAAI8/EpNcpaMfa3U/s72-c/2009-09-20-DesignDevJustTopBorder.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3911228832262718824</id><published>2009-09-19T12:35:00.000-07:00</published><updated>2009-09-20T02:12:13.526-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>ASP.NET - URL Mapping in Web.config</title><content type='html'>The URL mapping feature uses configuration information stored in web.config to remap incoming requests to a different URL. The remapping occurs prior to any other processing for the inbound request. Although the sample below demonstrates remapping a page request, any arbitrary file type can have its request remapped to a different URL. &lt;br /&gt;&lt;br /&gt;Imagine some body kept the URL of your web site in their bookmarks and you want to change the pages and structure of your site so that it affects the URLs, then you need to redirect the old ones to new correct destination, it works if you consider URL mapping.&lt;br /&gt;&lt;br /&gt;The URL mapping feature uses to redirect incoming requests to a different URL. Prior to any other processing for the incoming request the remapping happens.&lt;br /&gt;&lt;br /&gt;URL Mapping stores in web.config file, inside &amp;lt;system.web&amp;gt; tag, it's possible to add elements in &amp;lt;urlMappings&amp;gt;. In &amp;lt;add&amp;gt; tag there is &lt;span style="font-weight:bold;"&gt;url&lt;/span&gt; attribute which points to exact value of incoming url and &lt;span style="font-weight:bold;"&gt;mappedUrl&lt;/span&gt; attribute keeps value of rewritten url which is the exact redirected destination.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;system.web&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;urlMappings&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/LCDs.aspx" mappedUrl="~/prds.aspx?prdCat=lcd" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/DVDs.aspx" mappedUrl="~/prds.aspx?prdCat=dvd" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add url="~/MP3s.aspx" mappedUrl="~/prds.aspx?prdCat=mp3" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/urlMappings&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/system.web&amp;gt;&lt;br /&gt;&amp;lt;/configuration&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;With URL mapping, the redirection works the same as the Server.Transfer() method, and browser will still show the original incoming request URL, not the mapped URL.&lt;br /&gt;&lt;br /&gt;The Request.RawUrl property returns the original request URL.&lt;br /&gt;The Request.Path property reflects the result of mapped URL.&lt;br /&gt;Request.QueryString["yourQueryStringElement"] also return the result from the mapped URL.&lt;br /&gt;&lt;br /&gt;If we have a site map provider in our web page, it first try to use the original request URL when looking for the node in the site map which is provided by Request.RawUrl, if it doesn't find the matched record, it uses the Request.Path property.&lt;br /&gt;&lt;br /&gt;Incomming Request ---&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Mapping available in Web.config?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--- YES ---&gt; Use mappedUrl path ---&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[Render requested path]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--- NO  ---------------------------------&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3911228832262718824?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3911228832262718824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3911228832262718824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3911228832262718824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3911228832262718824'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/aspnet-mapping-urls-in-webconfig.html' title='ASP.NET - URL Mapping in Web.config'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-87385852279715208</id><published>2009-09-17T23:28:00.000-07:00</published><updated>2009-09-17T23:32:10.093-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Free Web Hosting - Web Hosting Company Reviews</title><content type='html'>&lt;a href="http://webdesign.about.com/od/freewebhosting/Free_Web_Hosting.htm"&gt;Free Web Hosting&lt;/a&gt; list by ABOUT.com&lt;br /&gt;&lt;br /&gt;&lt;a href="http://webdesign.about.com/od/freewebhosting/Free_Web_Hosting.htm"&gt;Web Hosting Company Reviews&lt;/a&gt;&lt;br /&gt;The data is based on reviews by people who have used the web hosting services from the hosting companies.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-87385852279715208?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/87385852279715208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=87385852279715208' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/87385852279715208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/87385852279715208'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/free-web-hosting-web-hosting-company.html' title='Free Web Hosting - Web Hosting Company Reviews'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8807396475350128572</id><published>2009-09-17T23:21:00.000-07:00</published><updated>2009-09-17T23:26:52.795-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>10 Best and Worst Web Hosting Providers!</title><content type='html'>Something interesting from ABOUT.com, at least it worth to take a look at the following lists, I don't want to say that I'm agree or disagree with the result which ABOUT.com collected, it's just interesting.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://webdesign.about.com/od/findahost/tp/best_web_hosts.htm"&gt;10 Best Web Hosting Providers&lt;/a&gt;&lt;br /&gt;As Rated by About.com Readers&lt;br /&gt;&lt;br /&gt;&lt;a href="http://webdesign.about.com/od/findahost/tp/worst_web_hosts.htm"&gt;10 Worst Web Hosting Providers&lt;/a&gt;&lt;br /&gt;As Rated by About.com Readers&lt;br /&gt;&lt;br /&gt;Last updated 21 April 2009&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8807396475350128572?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8807396475350128572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8807396475350128572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8807396475350128572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8807396475350128572'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/10-best-and-worst-web-hosting-providers.html' title='10 Best and Worst Web Hosting Providers!'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1645536953949307084</id><published>2009-09-11T23:52:00.000-07:00</published><updated>2009-09-12T15:47:21.321-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>ASP.NET - EventLog Class - Custom logs</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/SqwDgyADDHI/AAAAAAAAAI0/NwlWKI3yzYM/s1600-h/2009-09-12-EventViewer.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 216px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/SqwDgyADDHI/AAAAAAAAAI0/NwlWKI3yzYM/s320/2009-09-12-EventViewer.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5380679516513569906" /&gt;&lt;/a&gt;&lt;br /&gt;It's a good idea to log errors and unexpected conditions in event log. But if you want to record user actions or other data which repeats a lot and consume considerable amount of space, the Event Log is not a good choice and may be it's better to log it in database tables or XML files, because Event log uses disk space and takes processor time and it will affect overall performance of machine and our application.&lt;br /&gt;&lt;br /&gt;EventLog class in System.Diagnostics namespace allows us to utilize related functions in .NET, on the other hand, it's a good practice to make a custom errors log and record messages related to our application there. Then Event Viewer will collect messages in an individual place which allows us to keep track of them easily. the following sample code implements custom event logging idea.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;try&lt;br /&gt;{&lt;br /&gt;   // ...&lt;br /&gt;   // you code here&lt;br /&gt;   // ...&lt;br /&gt;}&lt;br /&gt;catch (Exception ex)&lt;br /&gt;{&lt;br /&gt;   string logName = "myWebAppEventLog";&lt;br /&gt;   if (!EventLog.SourceExists(logName))&lt;br /&gt;   {&lt;br /&gt;      EventSourceCreationData escd =&lt;br /&gt;         new EventSourceCreationData("myWebAppSrc", logName);&lt;br /&gt;      escd.MachineName = System.Environment.MachineName;&lt;br /&gt;      EventLog.CreateEventSource(escd);&lt;br /&gt;   }&lt;br /&gt;   EventLog evntLog = new EventLog(logName);&lt;br /&gt;   evntLog.Source = "myWebApp";&lt;br /&gt;   evntLog.WriteEntry(ex.Message, EventLogEntryType.Error);&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SqwDOsqRIqI/AAAAAAAAAIs/xSBWcIZiYGc/s1600-h/2009-09-12-ErrorEventLog-DivideByZero.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 178px; height: 200px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SqwDOsqRIqI/AAAAAAAAAIs/xSBWcIZiYGc/s200/2009-09-12-ErrorEventLog-DivideByZero.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5380679205842395810" /&gt;&lt;/a&gt;&lt;br /&gt;To find more you can take a look at following URLs and or search online.&lt;br /&gt;- EventLog Class&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlog%28VS.71%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlog%28VS.71%29.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- How to manage event logs using Visual C# .NET or Visual C# 2005&lt;br /&gt;&lt;a href="http://support.microsoft.com/kb/815314"&gt;http://support.microsoft.com/kb/815314&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- Security Ramifications of Event Logs&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/4xz6w79h%28VS.71%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/4xz6w79h%28VS.71%29.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1645536953949307084?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1645536953949307084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1645536953949307084' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1645536953949307084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1645536953949307084'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/aspnet-eventlog-class-custom-logs.html' title='ASP.NET - EventLog Class - Custom logs'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/SqwDgyADDHI/AAAAAAAAAI0/NwlWKI3yzYM/s72-c/2009-09-12-EventViewer.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6797431913171064616</id><published>2009-09-03T23:55:00.000-07:00</published><updated>2009-09-04T00:00:13.082-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>TypeDescriptor.GetConverter - unified way of converting types of values to other types</title><content type='html'>&lt;div class="mycode"&gt;...&lt;br /&gt;string[] brdrStyleAry = Enum.GetNames(typeof(BorderStyle));&lt;br /&gt;rbtnBrdr.DataSource = brdrStyleAry;&lt;br /&gt;rbtnBrdr.DataBind();&lt;br /&gt;...&lt;br /&gt;TypeConverter objCnvrtr =&lt;br /&gt;   TypeDescriptor.GetConverter(typeof(BorderStyle));&lt;br /&gt;pnlCard.BorderStyle =&lt;br /&gt;   (BorderStyle) objCnvrtr.ConvertFromString(rbtnBrdr.SelectedItem.Text);&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/2648132302968261880-6797431913171064616?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6797431913171064616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6797431913171064616' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6797431913171064616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6797431913171064616'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/09/typedescriptorgetconverter-unified-way.html' title='TypeDescriptor.GetConverter - unified way of converting types of values to other types'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-502518085661903148</id><published>2009-08-25T09:49:00.000-07:00</published><updated>2009-08-25T14:50:47.092-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Partitioning utility - EASEUS Partition Master Home Edition (FREE)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SpQd6Cq0kEI/AAAAAAAAAIc/JohCP7EgQ40/s1600-h/unlimited-features.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 124px;" src="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SpQd6Cq0kEI/AAAAAAAAAIc/JohCP7EgQ40/s200/unlimited-features.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5373953138345939010" /&gt;&lt;/a&gt;&lt;br /&gt;"EASEUS Partition Master Home Edition is a FREE disk partitioning utility for extending system partition, better disk space management, settling low disk space problem under Windows 2000/XP/Vista"&lt;br /&gt;&lt;a href="http://www.partition-tool.com/personal.htm"&gt;http://www.partition-tool.com/personal.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Overview:&lt;br /&gt;&lt;br /&gt;* Extend system partition to maximize computer performance.&lt;br /&gt;* Main features for better managing hard disk and maximizing computer performance.&lt;br /&gt;* Copy wizard to backup all data or copy entire hard disk to another without Windows reinstallation.&lt;br /&gt;* Usability features allow you to operate directly on the disk map with the drag-and-drop and preview the changes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Main Features:&lt;br /&gt;&lt;br /&gt;* Resize/Move partitions without data loss&lt;br /&gt;* Extend system partition easily and safely&lt;br /&gt;* Create, Delete and Format partitions with simple steps&lt;br /&gt;* Support up to 2TB partition or hard drive&lt;br /&gt;* Disk Copy, Partition Copy, Dynamic Disk Copy to protect or transfer da&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-502518085661903148?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/502518085661903148/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=502518085661903148' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/502518085661903148'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/502518085661903148'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/partitioning-utility-easeus-partition.html' title='Partitioning utility - EASEUS Partition Master Home Edition (FREE)'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e4Tel4Sa2XA/SpQd6Cq0kEI/AAAAAAAAAIc/JohCP7EgQ40/s72-c/unlimited-features.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8442096514351820836</id><published>2009-08-17T23:10:00.001-07:00</published><updated>2009-08-17T23:12:07.820-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL - How to rename a DATABASE physically in MS SQL Server 2008</title><content type='html'>As you know sp_renamedb stored procedure does not rename the database data files. I prefer to have the database data files contain a matching database name. If I have a database named [myDataBase], then the data files would typically be myDataBase.mdf and myDataBase_Log.ldf, simple and neat. In this way, just with take a look at the files, I can remember which SQL database they are talking about. Otherwise it's confusing.&lt;br /&gt;&lt;br /&gt;SQL 2008 allows us to rename a database using T-SQL and the sp_renamedb stored procedure has been deprecated. ALTER DATABASE can do the job for us.&lt;br /&gt;&lt;br /&gt;You can code as following to do the job:&lt;br /&gt;&lt;br /&gt;1- Change your database name:&lt;br /&gt;&lt;div class="mycode"&gt;ALTER DATABASE oldDataBase&lt;br /&gt;MODIFY NAME = newDataBase&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;2- Rename master data file (.mdf):&lt;br /&gt;&lt;div class="mycode"&gt;ALTER DATABASE AutoMac&lt;br /&gt;MODIFY FILE(NAME = 'oldDataBase', NEWNAME = 'newDataBase' )&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;3- Rename log file:&lt;br /&gt;&lt;div class="mycode"&gt;ALTER DATABASE AutoMac&lt;br /&gt;MODIFY FILE(NAME = 'oldDataBase_Log', NEWNAME = 'newDataBase_Log' )&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;4- Assign new full path file name to renamed master data file:&lt;br /&gt;&lt;div class="mycode"&gt;ALTER DATABASE AutoMac&lt;br /&gt;MODIFY FILE (NAME='newDataBase', FILENAME='C:\mySQLfiles\newDataBase.mdf')&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;5- Assign new full path file name to renamed log file:&lt;br /&gt;&lt;div class="mycode"&gt;ALTER DATABASE AutoMac&lt;br /&gt;MODIFY FILE (NAME='newDataBase_Log', FILENAME='C:\mySQLfiles\newDataBase_Log.ldf')&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;6- Now you need to take the database offline (Tasks-&gt;Take Offline) and bring it back online (Tasks-&gt;Bring Online), then you don't need to detach and attach your database again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8442096514351820836?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8442096514351820836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8442096514351820836' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8442096514351820836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8442096514351820836'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/sql-how-to-rename-database-physically.html' title='SQL - How to rename a DATABASE physically in MS SQL Server 2008'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5533777430611308205</id><published>2009-08-15T15:24:00.000-07:00</published><updated>2009-08-15T15:44:08.000-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL Server 2008 - Warning: Saving Changes Not Permitted</title><content type='html'>If [Prevent saving changes that require table re-creation] option in [Table Options] of [Designers] in SSMS [SQL Server Management Studio] is ON, when you want to save a table that requires the table be dropped and recreated behind the scenes, you will see the following warning.  It can happen if you want to modify a column data type, data type size, or to add a new column in a specific location, or ...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Soc6Be-GgVI/AAAAAAAAAIM/DL85Wa4rBhY/s1600-h/2009-08-15-SQL2008-SavingChangesNotPermitted.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 326px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Soc6Be-GgVI/AAAAAAAAAIM/DL85Wa4rBhY/s400/2009-08-15-SQL2008-SavingChangesNotPermitted.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5370324877830422866" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Saving changes is not permitted. The changes you have made require the following tables to be dropped and re-created. You have either made changes to a table that can't be re-created or enabled the option Prevent saving changes that require the table to be re-created.&lt;br /&gt;&lt;br /&gt;The solution is turn off the option in Tools -&gt; Options then go to [Designers] page and uncheck [Prevent saving changes that require table re-creation] option.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Soc6KLHijJI/AAAAAAAAAIU/jfctBwGL1Ww/s1600-h/2009-08-15-PreventSsavingChangesThatRequireTableReCreation.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 239px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Soc6KLHijJI/AAAAAAAAAIU/jfctBwGL1Ww/s400/2009-08-15-PreventSsavingChangesThatRequireTableReCreation.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5370325027120123026" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5533777430611308205?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5533777430611308205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5533777430611308205' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5533777430611308205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5533777430611308205'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/sql-server-2008-warning-saving-changes.html' title='SQL Server 2008 - Warning: Saving Changes Not Permitted'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/Soc6Be-GgVI/AAAAAAAAAIM/DL85Wa4rBhY/s72-c/2009-08-15-SQL2008-SavingChangesNotPermitted.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4244866699239790084</id><published>2009-08-14T11:08:00.001-07:00</published><updated>2009-08-14T12:59:38.924-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL - How to rename a DATABASE in MS SQL Server 2005/2008</title><content type='html'>You could change the DATABASE name by calling sp_renameDB system stored procedure but it will be deprecated in future versions.&lt;br /&gt;&lt;div class="mycode"&gt;EXEC sp_renameDB 'myOldDB','myNewDB'&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;sp_renamedb (Transact-SQL)&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms186217.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms186217.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;According to MSDN document in above URL you better Use ALTER DATABASE MODIFY NAME Instead of sp_renameDB to rename.&lt;br /&gt;"This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature. Use ALTER DATABASE MODIFY NAME instead. For more information, see  ALTER DATABASE (Transact-SQL)."&lt;br /&gt;&lt;br /&gt;ALTER DATABASE (Transact-SQL)&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms174269.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms174269.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;/* Rename the Database myOldDB to myNewDB */&lt;br /&gt;ALTER DATABASE myOldDB MODIFY NAME = myNewDB&lt;br /&gt;GO&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;But none of above mentioned commands change Physical Name of database files, how can we change Physical file names of MS SQL Database files (DB and Log files) ? it comes in next blog entry, cheers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-4244866699239790084?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4244866699239790084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4244866699239790084' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4244866699239790084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4244866699239790084'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/sql-how-to-rename-database-in-ms-sql.html' title='SQL - How to rename a DATABASE in MS SQL Server 2005/2008'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8817895465488767531</id><published>2009-08-09T23:50:00.000-07:00</published><updated>2009-08-09T23:51:00.313-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='XML-XSD-XSLT'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>XSD - XML Schema constraints and value checks</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8817895465488767531?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8817895465488767531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8817895465488767531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8817895465488767531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8817895465488767531'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/xsd-xml-schema-constraints-and-value.html' title='XSD - XML Schema constraints and value checks'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5262098689955070829</id><published>2009-08-07T23:32:00.000-07:00</published><updated>2009-08-09T13:17:53.240-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='XML-XSD-XSLT'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>Valid XHTML document</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sn8u6aOhTzI/AAAAAAAAAH0/NfXC956miro/s1600-h/2009-08-09-psd_xhtml_logo.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 100px; height: 100px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sn8u6aOhTzI/AAAAAAAAAH0/NfXC956miro/s320/2009-08-09-psd_xhtml_logo.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5368060861856436018" /&gt;&lt;/a&gt;&lt;br /&gt;An XHTML document is technically an XML document. XML documents can include an XML declaration as the first line in the document, something like this:&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;&lt;br /&gt;There are only a few major rules to consider, but you have to follow them if you want to create a valid XHTML document. Here they are in brief:&lt;br /&gt;&lt;br /&gt;* In an XHTML document every tag must be closed.&lt;br /&gt;* Empty elements without content, must be correctly closed with a closing slash.&lt;br /&gt;    For example, a break tag is formatted &amp;lt;br /&amp;gt;.&lt;br /&gt;* Tags must be nested correctly,&lt;br /&gt;    it works like a LIFO queue, the last tag you open must be closed first.&lt;br /&gt;* All XHTML tags should be in lowercase.&lt;br /&gt;* All attribute values are enclosed in quotation marks.&lt;br /&gt;* A valid XHTML document needs a valid XHTML DOCTYPE declaration.&lt;br /&gt;&lt;br /&gt;The DOCTYPE declaration works for several purposes:&lt;br /&gt;* DOCTYPE helps your page to be validated as XHTML.&lt;br /&gt;* DOCTYPE allows the browser knows the version of your page markup language.&lt;br /&gt;* DOCTYPE references the specific DTD for your page markup language.&lt;br /&gt;* DOCTYPE enables your page to be displayed properly in standard web browsers&lt;br /&gt;(IE, Netscape Navigator, Mozilla, Firefox, Opera, Chrome, and ...).&lt;br /&gt;&lt;br /&gt;For an XHTML 1.0 document, you can choose one of three different DOCTYPES:&lt;br /&gt;- strict&lt;br /&gt;- transitional&lt;br /&gt;- frames&lt;br /&gt;&lt;br /&gt;- strict DOCTYPE declaration:&lt;br /&gt;If for presenting and styling your document you are using CSS.&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Strict//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;- transitional DOCTYPE declaration:&lt;br /&gt;If your document includes any presentational or styling markup code.&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;- frames DOCTYPE declaration:&lt;br /&gt;If your document is in frames.&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Frameset//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;The easiest to use is the transitional DOCTYPE declaration, but using CSS to present document sometimes is the best way.&lt;br /&gt;&lt;br /&gt;After XHTML DOCTYPE declaration, it must have an additional line of markup:&lt;br /&gt;&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; xml:lang=&amp;quot;en&amp;quot; lang=&amp;quot;en&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;In XHTML, the above line works instead of the opening &amp;lt;html&amp;gt; in HTML document. It adds information about the XHTML namespace. (A namespace is basically a vocabulary of elements and attributes)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5262098689955070829?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5262098689955070829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5262098689955070829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5262098689955070829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5262098689955070829'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/valid-xhtml-document.html' title='Valid XHTML document'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sn8u6aOhTzI/AAAAAAAAAH0/NfXC956miro/s72-c/2009-08-09-psd_xhtml_logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7670464078714527568</id><published>2009-08-03T00:09:00.000-07:00</published><updated>2009-08-03T00:15:38.010-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>.NET - Can I remove .NET Framework 1.0 or 1.1 now that I have 2.0 or later on my machine?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaOldRuMWI/AAAAAAAAAHk/PKAqpH8xltM/s1600-h/2009-08-03-DotNet-logo.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 133px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaOldRuMWI/AAAAAAAAAHk/PKAqpH8xltM/s200/2009-08-03-DotNet-logo.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5365632780223787362" /&gt;&lt;/a&gt;&lt;br /&gt;Yes, you can! cheeers, it's because of side by side execution manner in earlier versions (1.0, 1.1, 2.0). I keep it, cuz it doesn't occupy too much space.&lt;br /&gt;&lt;br /&gt;- But there are some breaking changes in .NET Framework 2.0 if you have an application which wants to run on version 1.0 or 1.1 if you remove those versions.&lt;br /&gt;&lt;br /&gt;Breaking Changes in .NET Framework 2.0&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/netframework/aa570326.aspx"&gt;http://msdn.microsoft.com/en-us/netframework/aa570326.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- Look at the .NET Framework 3.5 Architecture,:&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb822049.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb822049.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;"The relationship of the .NET Framework versions 2.0, 3.0, and 3.5 differs from the relationship of versions 1.0, 1.1, and 2.0. The .NET Framework versions 1.0, 1.1, and 2.0 are completely separate from each other, and one version can be present on a computer regardless of whether the other versions are present. When versions 1.0, 1.1, and 2.0 are on the same computer, each version has its own common language runtime, class libraries, compiler, and so forth. Application developers can choose which version to target."&lt;br /&gt;&lt;br /&gt;- The .NET Framework 2.0 was a generational release over the .NET Framework 1.0 but .NET Framework 3.0 (and later) adds new technologies (additive release).&lt;br /&gt;&lt;br /&gt;How .NET Framework 3.0 Relates to .NET Framework 2.0 and Earlier&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa480198.aspx#netfx30_topic3"&gt;http://msdn.microsoft.com/en-us/library/aa480198.aspx#netfx30_topic3&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;"The .NET Framework 3.0 adds new technologies to the .NET Framework 2.0, which makes the .NET Framework 3.0 a superset of the .NET Framework 2.0. You can think of .NET Framework 3.0 as an "additive" release to the .NET Framework 2.0, as contrasted with a generational release where software is revised across the board. (For example, the .NET Framework 2.0 was a generational release over the .NET Framework 1.0.) &lt;br /&gt;&lt;br /&gt;Because .NET Framework 3.0 is an additive release and uses the core run-time components from .NET Framework 2.0, it is completely backward compatible with the earlier version. Your existing .NET Framework 2.0 based-applications will continue to run without any modifications and you can safely continue your investments using the technologies that shipped with .NET Framework 2.0."&lt;br /&gt;&lt;br /&gt;The same question in social.msdn: Which version of Framework .net?&lt;br /&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/netfxsetup/thread/0387a1d6-404b-48d4-9d8c-53aefcb75d7b"&gt;http://social.msdn.microsoft.com/Forums/en-US/netfxsetup/thread/0387a1d6-404b-48d4-9d8c-53aefcb75d7b&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;.NET Framework article in WiKiPedia is also interesting:&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/.NET_framework"&gt;http://en.wikipedia.org/wiki/.NET_framework&lt;/a&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7670464078714527568?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7670464078714527568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7670464078714527568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7670464078714527568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7670464078714527568'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/net-can-i-remove-net-framework-10-or-11.html' title='.NET - Can I remove .NET Framework 1.0 or 1.1 now that I have 2.0 or later on my machine?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaOldRuMWI/AAAAAAAAAHk/PKAqpH8xltM/s72-c/2009-08-03-DotNet-logo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6878971486885168428</id><published>2009-08-02T23:28:00.000-07:00</published><updated>2009-08-02T23:41:54.979-07:00</updated><title type='text'>One year Blog anniversary</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaGdyDMLeI/AAAAAAAAAHc/M_jZwhD4M7w/s1600-h/2009-08-02-FirstAnniversary.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 124px; height: 111px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaGdyDMLeI/AAAAAAAAAHc/M_jZwhD4M7w/s200/2009-08-02-FirstAnniversary.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5365623852268006882" /&gt;&lt;/a&gt;&lt;br /&gt;It's a happy day, one year ago when I started this blog, I wanted to share something with others as others shared something with us. I'm happy to be part of this unfinished sharing story, then let's share more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6878971486885168428?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6878971486885168428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6878971486885168428' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6878971486885168428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6878971486885168428'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/08/one-year-blog-anniversary.html' title='One year Blog anniversary'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/SnaGdyDMLeI/AAAAAAAAAHc/M_jZwhD4M7w/s72-c/2009-08-02-FirstAnniversary.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-9009084268751529159</id><published>2009-07-31T23:24:00.000-07:00</published><updated>2009-07-31T23:28:42.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><title type='text'>C# - C++ - [StructLayout] to pass structures to unmanaged function</title><content type='html'>CLR rearranges the order of type members during runtime, it generates better performance, faster access to members, less memory consumption, and so. But when .NET wants to interoperate with unmanaged codes, it's necessary to keep the structure layout as is. For this purpose, it's possible to specify the layout of a structure by using the StructLayout attribute.&lt;br /&gt;&lt;br /&gt;[StructLayout(LayoutKind.Sequential)] keeps the sequence of members in structure type as defined. The following sample gets the OS version by passing a pointer to structure to GetVersionEx function in unmanaged kernel32.dll:&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;...&lt;br /&gt;using System.Runtime.InteropServices;&lt;br /&gt;...&lt;br /&gt;[DllImport("kernel32.dll")]&lt;br /&gt;public static extern&lt;br /&gt;    bool GetVersionEx(ref OSVERSIONINFO lpVersionInfo);&lt;br /&gt;&lt;br /&gt;[StructLayout(LayoutKind.Sequential)]&lt;br /&gt;public struct OSVERSIONINFO&lt;br /&gt;{&lt;br /&gt;    public int dwOSVersionInfoSize;&lt;br /&gt;    public int dwMajorVersion;&lt;br /&gt;    public int dwMinorVersion;&lt;br /&gt;    public int dwBuildNumber;&lt;br /&gt;    public int dwPlatformId;&lt;br /&gt;    [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]&lt;br /&gt;    public String szCSDVersion;&lt;br /&gt;}&lt;br /&gt;...&lt;br /&gt;OSVERSIONINFO osVer = new OSVERSIONINFO();&lt;br /&gt;osVer.dwOSVersionInfoSize = Marshal.SizeOf(osVer);&lt;br /&gt;string osVersion = string.Empty;&lt;br /&gt;&lt;br /&gt;if (GetVersionEx(ref osVer))&lt;br /&gt;osVersion = string.Format("{0}.{1}.{2}",&lt;br /&gt;    osVer.dwMajorVersion,&lt;br /&gt;    osVer.dwMinorVersion,&lt;br /&gt;    osVer.dwBuildNumber);&lt;br /&gt;&lt;br /&gt;MessageBox.Show("OS Ver: " + osVersion);&lt;/div&gt;&lt;br /&gt;OSVERSIONINFO Structure&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms724834(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms724834(VS.85).aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-9009084268751529159?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/9009084268751529159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=9009084268751529159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/9009084268751529159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/9009084268751529159'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-c-structlayout-to-pass-structures-to.html' title='C# - C++ - [StructLayout] to pass structures to unmanaged function'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6579851699428823849</id><published>2009-07-31T23:21:00.000-07:00</published><updated>2009-07-31T23:24:00.063-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>CardSwap !</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SnPfd0N9QMI/AAAAAAAAAHU/raKjDeqHQi4/s1600-h/2009-07-31-CardSwap.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 177px; height: 83px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SnPfd0N9QMI/AAAAAAAAAHU/raKjDeqHQi4/s320/2009-07-31-CardSwap.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5364877284454777026" /&gt;&lt;/a&gt;&lt;br /&gt;I received an email from a friend about cardswap.ca, perfect place to swap or sell your gift cards or buy one with discount. It's just started but I expect it grows pretty fast. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cardswap.ca/"&gt;CardSwap&lt;/a&gt; is the premier online Canadian marketplace for gift card exchanges. Whether you want to buy gift cards at substantial savings, or sell them for cash, &lt;a href="http://www.cardswap.ca/"&gt;CardSwap&lt;/a&gt; offers the simplest way to get what you want.&lt;br /&gt;&lt;a href="http://www.cardswap.ca/"&gt;http://www.cardswap.ca/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6579851699428823849?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6579851699428823849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6579851699428823849' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6579851699428823849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6579851699428823849'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/cardswap.html' title='CardSwap !'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SnPfd0N9QMI/AAAAAAAAAHU/raKjDeqHQi4/s72-c/2009-07-31-CardSwap.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7670472056196004975</id><published>2009-07-30T23:27:00.000-07:00</published><updated>2009-07-30T23:38:02.381-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>C# - How can we show Markup Language (HTML, XML, XSD, ... ) codes in blogger ?</title><content type='html'>Well, we need to encode ampersands and angle brackets:&lt;br /&gt;&lt; to &amp;amp;lt;&lt;br /&gt;&gt; to &amp;amp;gt;&lt;br /&gt;&amp; to &amp;amp;amp;&lt;br /&gt;&lt;br /&gt;I use a great tool in the following url:&lt;br /&gt;&lt;a href="http://centricle.com/tools/html-entities/"&gt;http://centricle.com/tools/html-entities/&lt;/a&gt;&lt;br /&gt;Encode / Decode HTML Entities&lt;br /&gt;Convert text to HTML entities (and vice-versa)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7670472056196004975?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7670472056196004975/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7670472056196004975' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7670472056196004975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7670472056196004975'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-how-can-we-show-markup-language-html.html' title='C# - How can we show Markup Language (HTML, XML, XSD, ... ) codes in blogger ?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5722963809638658517</id><published>2009-07-27T12:00:00.000-07:00</published><updated>2009-07-27T12:48:33.308-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='XML-XSD-XSLT'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Validate XML document against a Schema - XmlReaderSettings</title><content type='html'>Sample code for Validate XML document against a Schema:&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;...&lt;br /&gt;using System.Xml;&lt;br /&gt;using System.Xml.Schema;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;public static bool XmlValidateByXsd(string xmlFile, string xsdFile)&lt;br /&gt;{&lt;br /&gt;   bool retVal = false;&lt;br /&gt;   if( ! File.Exists( xmlFile ) || ! File.Exists( xsdFile ) )&lt;br /&gt;       return retVal;&lt;br /&gt;&lt;br /&gt;   try&lt;br /&gt;   {&lt;br /&gt;       XmlReaderSettings xmlRdrSettings = new XmlReaderSettings();&lt;br /&gt;       xmlRdrSettings.ValidationType = ValidationType.Schema;&lt;br /&gt;&lt;br /&gt;       xmlRdrSettings.Schemas = new XmlSchemaSet();&lt;br /&gt;       xmlRdrSettings.Schemas.Add(null, xsdFile);&lt;br /&gt;       xmlRdrSettings.ValidationEventHandler +=&lt;br /&gt;           new ValidationEventHandler(ValidationEventHandler);&lt;br /&gt;       using (XmlReader xmlRdr = XmlReader.Create(xmlFile, xmlRdrSettings))&lt;br /&gt;       {&lt;br /&gt;           while (xmlRdr.Read()) { }&lt;br /&gt;       }&lt;br /&gt;       retVal = true;&lt;br /&gt;   }&lt;br /&gt;   catch (XmlException xmlEx)&lt;br /&gt;   {&lt;br /&gt;       MessageBox.Show(xmlEx.Message);&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   return retVal;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private static void ValidationEventHandler(object sender, ValidationEventArgs args)&lt;br /&gt;{&lt;br /&gt;   // Do error handling&lt;br /&gt;   // Console.WriteLine("Error: " + args.Message);&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The code line to call the method to validate XML against XSD:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;bool retVal = myClass.XmlValidateByXsd(@"C:\employee.xml", @"C:\employee.xsd");&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Sample XML file:&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;&amp;lt;Employees xmlns=&amp;quot;http://iborn2code.blogspot.com&amp;quot;&lt;br /&gt;xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; &lt;br /&gt;xsi:schemaLocation=&amp;quot;http://iborn2code.blogspot.com employee.xsd&amp;quot;&amp;gt;&lt;br /&gt;   &amp;lt;Employee&amp;gt;&lt;br /&gt;      &amp;lt;SIN&amp;gt;525252525&amp;lt;/SIN&amp;gt; &lt;br /&gt;      &amp;lt;FirstName&amp;gt;AB BA&amp;lt;/FirstName&amp;gt; &lt;br /&gt;      &amp;lt;City&amp;gt;Vancouver&amp;lt;/City&amp;gt; &lt;br /&gt;      &amp;lt;Zip&amp;gt;V1V&amp;lt;/Zip&amp;gt; &lt;br /&gt;   &amp;lt;/Employee&amp;gt;&lt;br /&gt;   &amp;lt;Employee&amp;gt;&lt;br /&gt;      &amp;lt;SIN&amp;gt;525252527&amp;lt;/SIN&amp;gt; &lt;br /&gt;      &amp;lt;FirstName&amp;gt;BC CB&amp;lt;/FirstName&amp;gt; &lt;br /&gt;      &amp;lt;City&amp;gt;Kelowna&amp;lt;/City&amp;gt; &lt;br /&gt;      &amp;lt;Zip&amp;gt;V2V&amp;lt;/Zip&amp;gt; &lt;br /&gt;   &amp;lt;/Employee&amp;gt;&lt;br /&gt;&amp;lt;/Employees&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Sample XML Schema for above XML:&lt;div class="mycode"&gt;&lt;br /&gt;&amp;lt;div class=&amp;quot;mycode&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;ISO-8859-1&amp;quot; ?&amp;gt;&lt;br /&gt;&amp;lt;xs:schema xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;xs:element name=&amp;quot;Employee&amp;quot;&amp;gt;&lt;br /&gt;  &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;    &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;      &amp;lt;xs:element name=&amp;quot;SIN&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt;&lt;br /&gt;      &amp;lt;xs:element name=&amp;quot;FirstName&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt;&lt;br /&gt;      &amp;lt;xs:element name=&amp;quot;City&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt;&lt;br /&gt;      &amp;lt;xs:element name=&amp;quot;Zip&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;  &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&amp;lt;/xs:element&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/xs:schema&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5722963809638658517?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5722963809638658517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5722963809638658517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5722963809638658517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5722963809638658517'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-validate-xml-document-against-schema.html' title='C# - Validate XML document against a Schema - XmlReaderSettings'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7583943211554139473</id><published>2009-07-23T09:55:00.000-07:00</published><updated>2009-07-23T09:56:28.762-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Error Message - 'This would cause two bindings in the collection to bind to the same property'</title><content type='html'>It shows the code is calling Control.DataBindings.Add two times to the same parameters.&lt;br /&gt;May be duplicate binding to the DataBindings collection causes this error. Anyway one&lt;br /&gt;solution is to clear Control.DataBindings before adding new binding:&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;this.txtAddress.DataBindings.Clear();&lt;br /&gt;this.txtZipCode.DataBindings.Clear();&lt;br /&gt;&lt;br /&gt;this.txtAddress.Text = string.Empty;&lt;br /&gt;this.txtZipCode.Text = string.Empty;&lt;br /&gt;&lt;br /&gt;this.txtAddress.DataBindings.Add("Text", myDtaTbl, "Address");&lt;br /&gt;this.txtZipCode.DataBindings.Add("Text", myDtaTbl, "ZipCode");&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/2648132302968261880-7583943211554139473?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7583943211554139473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7583943211554139473' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7583943211554139473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7583943211554139473'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-error-message-this-would-cause-two.html' title='C# - Error Message - &apos;This would cause two bindings in the collection to bind to the same property&apos;'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1255605166485395886</id><published>2009-07-21T23:20:00.001-07:00</published><updated>2009-07-21T23:20:54.600-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>.NET - Event Log</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1255605166485395886?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1255605166485395886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1255605166485395886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1255605166485395886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1255605166485395886'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/net-event-log.html' title='.NET - Event Log'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8000518889641613058</id><published>2009-07-19T23:50:00.001-07:00</published><updated>2009-07-19T23:50:48.746-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Application Doman</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8000518889641613058?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8000518889641613058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8000518889641613058' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8000518889641613058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8000518889641613058'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-application-doman.html' title='C# - Application Doman'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7940813598911102710</id><published>2009-07-18T18:53:00.000-07:00</published><updated>2009-07-18T18:55:29.380-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>www.speedtest.net - to test the speed of your Internet connection</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SmJ9ColgV0I/AAAAAAAAAHM/C54L0bG8phs/s1600-h/2009-07-18(speedometer).jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 282px; height: 163px;" src="http://3.bp.blogspot.com/_e4Tel4Sa2XA/SmJ9ColgV0I/AAAAAAAAAHM/C54L0bG8phs/s320/2009-07-18(speedometer).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5359983990732248898" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.speedtest.net/index.php"&gt;http://www.speedtest.net/index.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What is Speedtest.net?&lt;br /&gt;&lt;br /&gt;Use Speedtest.net to test the speed of your Internet connection. See if you are getting what you pay for or share your results with others!&lt;br /&gt;&lt;br /&gt;Speedtest.net is a broadband speed analysis tool that allows anyone to test their Internet connection. Ookla provides this service for free to anyone curious about the performance of their connection to and from hundreds of locations around the world.&lt;br /&gt;&lt;br /&gt;What is Speedtest.net testing?&lt;br /&gt;&lt;br /&gt;Speedtest.net performs three key measurements used to determine the overall quality and performance of your Internet connection.&lt;br /&gt;&lt;br /&gt;* Download Speed&lt;br /&gt;* Upload Speed&lt;br /&gt;* Ping (Latency)&lt;br /&gt;(The time it takes in milliseconds for a small piece of data to be sent from your computer to the Internet and back)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-7940813598911102710?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7940813598911102710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7940813598911102710' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7940813598911102710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7940813598911102710'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/wwwspeedtestnet-to-test-speed-of-your.html' title='www.speedtest.net - to test the speed of your Internet connection'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_e4Tel4Sa2XA/SmJ9ColgV0I/AAAAAAAAAHM/C54L0bG8phs/s72-c/2009-07-18(speedometer).jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5552514931584159059</id><published>2009-07-18T14:24:00.000-07:00</published><updated>2009-07-18T14:29:17.723-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Audio/Video'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>CamStudio open source - Free Streaming Video Software</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SmI-BTf0KUI/AAAAAAAAAHE/6oIe_Vu8qk8/s1600-h/2009-07-18(CamStudio).gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 305px; height: 299px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SmI-BTf0KUI/AAAAAAAAAHE/6oIe_Vu8qk8/s320/2009-07-18(CamStudio).gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5359914698658818370" /&gt;&lt;/a&gt;&lt;br /&gt;CamStudio is able to record all screen and audio activity on your computer and create industry-standard AVI video files and using its built-in SWF Producer can turn those AVIs into bandwidth-friendly Streaming Flash videos (SWFs).&lt;br /&gt;&lt;br /&gt;It's a perfect, user friendly, free, and practical screen and audio recording app.&lt;br /&gt;&lt;a href="http://camstudio.org/"&gt;http://camstudio.org/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5552514931584159059?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5552514931584159059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5552514931584159059' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5552514931584159059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5552514931584159059'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/camstudio-open-source-free-streaming.html' title='CamStudio open source - Free Streaming Video Software'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SmI-BTf0KUI/AAAAAAAAAHE/6oIe_Vu8qk8/s72-c/2009-07-18(CamStudio).gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7596368411104037763</id><published>2009-07-17T11:29:00.000-07:00</published><updated>2009-07-17T11:57:28.532-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SQL - Installing SQL Express 2008 - Restart Computer Failed problem</title><content type='html'>Repeatedly MS SQL Express 2008 installation package asked to restart computer when I wanted to install SQL 2008 Express on a machine.&lt;br /&gt;&lt;br /&gt;I needed to check system's pending file rename operations registry key. It should be cleared after rebooting the system. If not, clear it and just click on Re-run or try it again.&lt;br /&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE&lt;br /&gt;    SYSTEM&lt;br /&gt;         CurrentControlSet&lt;br /&gt;              Control&lt;br /&gt;                   Session Manager&lt;br /&gt;                        PendingFileRenameOperations&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/2648132302968261880-7596368411104037763?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7596368411104037763/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7596368411104037763' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7596368411104037763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7596368411104037763'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/sql-installing-sql-express-2008-restart.html' title='SQL - Installing SQL Express 2008 - Restart Computer Failed problem'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3839517056813856056</id><published>2009-07-15T12:06:00.000-07:00</published><updated>2009-07-15T12:07:46.905-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# -ComboBox- How to move the selected item to top of the list?</title><content type='html'>In a ComboBox control, the .SelectedIndexChanged event fires when&lt;br /&gt;we select an item then the following code moves the item to top:&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;private void cbo_SelectedIndexChanged(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;  ComboBox cboSender = (ComboBox)sender;&lt;br /&gt;  if ( cboSender.SelectedIndex &gt; 0 )&lt;br /&gt;  {&lt;br /&gt;    string strToFind = cboSender.Items[cboSender.SelectedIndex].ToString();&lt;br /&gt;    cboSender.Items.RemoveAt( cboSender.SelectedIndex );&lt;br /&gt;    cboSender.Items.Insert(0, strToFind);&lt;br /&gt;    cboSender.SelectedIndex = 0;&lt;br /&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/2648132302968261880-3839517056813856056?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3839517056813856056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3839517056813856056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3839517056813856056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3839517056813856056'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-combobox-how-to-move-selected-item-to.html' title='C# -ComboBox- How to move the selected item to top of the list?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7197808245612267301</id><published>2009-07-14T16:38:00.001-07:00</published><updated>2009-07-14T16:38:37.959-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to scroll in RichTextBox control after searching?</title><content type='html'>To search a value in a TextRichBox control you can use .Find( ... ) method,&lt;br /&gt;and if it can find a match then it returns the index of starting character.&lt;br /&gt;To fit the text and show the found value, .ScrollToCaret() method do the job.&lt;br /&gt;The sample code is as following:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;   ...&lt;br /&gt;   int iIndx = this.rtbFileTxt.Find(strFind,&lt;br /&gt;                                    this.rtbFileTxt.SelectionStart,&lt;br /&gt;                                    RichTextBoxFinds.None);&lt;br /&gt;&lt;br /&gt;   if (iIndx &lt; 0) return false;&lt;br /&gt;&lt;br /&gt;   this.SuspendLayout();&lt;br /&gt;   this.rtbFileTxt.SelectionStart = iIndx;&lt;br /&gt;   this.rtbFileTxt.SelectionColor = Color.Yellow;&lt;br /&gt;   this.rtbFileTxt.SelectionBackColor = Color.Black;&lt;br /&gt;&lt;br /&gt;   Point ptCharIndx =&lt;br /&gt;      this.rtbFileTxt.GetPositionFromCharIndex(this.rtbFileTxt.SelectionStart);&lt;br /&gt;   if (ptCharIndx.Y &gt; this.rtbFileTxt.Height)&lt;br /&gt;       this.rtbFileTxt.ScrollToCaret();&lt;br /&gt;   this.ResumeLayout(true);&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/2648132302968261880-7197808245612267301?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7197808245612267301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7197808245612267301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7197808245612267301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7197808245612267301'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-how-to-scroll-in-richtextbox-control.html' title='C# - How to scroll in RichTextBox control after searching?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1250718105015654175</id><published>2009-07-14T12:58:00.001-07:00</published><updated>2009-07-14T12:58:42.634-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to get the cursor position in a RichTextBox control</title><content type='html'>- Solution 1:&lt;br /&gt;TextBoxBase.SelectionStart Property&lt;br /&gt;Gets or sets the starting point of text selected in the text box. &lt;br /&gt;&lt;br /&gt;* Inheritance Hierarchy&lt;br /&gt;System.Object&lt;br /&gt;  System.MarshalByRefObject&lt;br /&gt;    System.ComponentModel.Component&lt;br /&gt;      System.Windows.Forms.Control&lt;br /&gt;        System.Windows.Forms.TextBoxBase&lt;br /&gt;          System.Windows.Forms.RichTextBox&lt;br /&gt;          &lt;br /&gt;.SelectionStart Property of a RichTextBox control gives you&lt;br /&gt;the cursor position nonetheless you have a highlighted selected&lt;br /&gt;text or not and it doesn't matter that SelectionLength property&lt;br /&gt;is zero or greater than zero. &lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;   ...&lt;br /&gt;   int iCrsrPos = this.rtbCntrl.SelectionStart&lt;br /&gt;   ...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;- Solution 2:&lt;br /&gt;&lt;br /&gt;If you want to get character index when mouse moves, you can&lt;br /&gt;get convert Cursor.Position to x and y values of a Point type&lt;br /&gt;which are related to your control (RichTextBox) by calling&lt;br /&gt;.PointToClient( ... ) method, and then call GetCharIndexFromPosition&lt;br /&gt;method to find out the character position.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;private void rtbCntrl_MouseMove(object sender, MouseEventArgs e)&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;   Point rtbPos = this.rtbCntrl.PointToClient(Cursor.Position);&lt;br /&gt;   int iCharIndx = this.rtbCntrl.GetCharIndexFromPosition(rtbPos);&lt;br /&gt;&lt;br /&gt;   // ... do what ever want you do with the character position&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/2648132302968261880-1250718105015654175?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1250718105015654175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1250718105015654175' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1250718105015654175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1250718105015654175'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/07/c-how-to-get-cursor-position-in.html' title='C# - How to get the cursor position in a RichTextBox control'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-186390638680151978</id><published>2009-06-30T23:50:00.001-07:00</published><updated>2009-06-30T23:50:47.880-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Threading - Part 1</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-186390638680151978?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/186390638680151978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=186390638680151978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/186390638680151978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/186390638680151978'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/06/c-threading-part-1.html' title='C# - Threading - Part 1'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5069195090919841631</id><published>2009-06-23T14:49:00.000-07:00</published><updated>2009-06-23T14:51:59.542-07:00</updated><title type='text'>Came back after 4 weeks holiday</title><content type='html'>I came back after being 4 weeks off, then let's blog more and more.&lt;br /&gt;I'm fresh and ready to go now, be ready for something new, cheers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5069195090919841631?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5069195090919841631/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5069195090919841631' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5069195090919841631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5069195090919841631'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/06/came-back-after-4-weeks-holiday.html' title='Came back after 4 weeks holiday'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-6490837273124816643</id><published>2009-05-25T11:58:00.000-07:00</published><updated>2009-05-25T12:18:24.952-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio 2010 Beta 1</title><content type='html'>Visual Studio 2010 Beta 1 is ready to download since May 20&lt;br /&gt;then it's ready to test (and also the .Net Framework 4) by public. &lt;br /&gt;&lt;br /&gt;URL to download:&lt;br /&gt;Visual Studio 2010 and .NET Framework 4 Beta 1&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Visual Studio 2010 Product Highlights&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd547188(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd547188(VS.100).aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Visual Studio 2010 and .NET Framework 4 Training Kit - May Preview&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=752CB725-969B-4732-A383-ED5740F02E93&amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=752CB725-969B-4732-A383-ED5740F02E93&amp;displaylang=en&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;Visual Studio 2010 Samples&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd238515.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/dd238515.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Visual Studio 2010 and .NET Framework 4 Beta 1 Walkthroughs&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx"&gt;http://msdn.microsoft.com/en-us/vstudio/dd441784.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-6490837273124816643?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/6490837273124816643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=6490837273124816643' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6490837273124816643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/6490837273124816643'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/visual-studio-2010-beta-1.html' title='Visual Studio 2010 Beta 1'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1995420673771651773</id><published>2009-05-19T00:03:00.000-07:00</published><updated>2009-05-19T00:06:17.983-07:00</updated><title type='text'>My 100th Blog Entry!</title><content type='html'>I made it to 100! and it's just starting to grow up, Thank all the readers, it's a try to share and there is a hope to help. I learned a lot from others,and I decided to share. Till now, it visited from 51 countries, this encourages me to try more, cheers.&lt;br /&gt;&lt;br /&gt;Coming soon: Many more blog entries! it'll continue.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/ShJaIuXFnJI/AAAAAAAAAG0/Wf9jJYts_m4/s1600-h/VS2008.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 210px; height: 100px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/ShJaIuXFnJI/AAAAAAAAAG0/Wf9jJYts_m4/s400/VS2008.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5337427614317780114" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/ShJaPVx7OJI/AAAAAAAAAG8/DjMVm5n8Z_8/s1600-h/SQL2008.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 210px; height: 100px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/ShJaPVx7OJI/AAAAAAAAAG8/DjMVm5n8Z_8/s400/SQL2008.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5337427727978543250" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1995420673771651773?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1995420673771651773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1995420673771651773' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1995420673771651773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1995420673771651773'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/my-100th-blog-entry.html' title='My 100th Blog Entry!'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/ShJaIuXFnJI/AAAAAAAAAG0/Wf9jJYts_m4/s72-c/VS2008.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2827516479074309545</id><published>2009-05-18T22:46:00.000-07:00</published><updated>2009-05-18T22:57:52.247-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Generic dictionary Types - Dictionary</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/ShJJotCGyVI/AAAAAAAAAGs/RICV6rjRXTY/s1600-h/2009-05-18(Dictionary+Generic+Collection).jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 180px; height: 272px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/ShJJotCGyVI/AAAAAAAAAGs/RICV6rjRXTY/s400/2009-05-18(Dictionary+Generic+Collection).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5337409472019482962" /&gt;&lt;/a&gt;&lt;br /&gt;Dictionary&lt;TKey, TValue&gt; Class&lt;br /&gt;Represents a collection of keys and values.&lt;br /&gt;Namespace:  System.Collections.Generic&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/xfhwa508.aspx"&gt;http://msdn.microsoft.com/en-us/library/xfhwa508.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Sample code:&lt;/span&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;public Dictionary&lt;string, Color&gt; seasonDic =&lt;br /&gt;             new Dictionary&lt;string, Color&gt;();&lt;br /&gt;...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Some sample methods to work with Dictionary&lt;TKey, TValue&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;// Fill the Dictionary&lt;TKey, TValue&gt;&lt;br /&gt;private void fillSeasonDic()&lt;br /&gt;{&lt;br /&gt;    seasonDic.Add("Spring", Color.LightGreen);&lt;br /&gt;    seasonDic.Add("Summer", Color.Orange);&lt;br /&gt;    seasonDic.Add("Autumn", Color.LightYellow);&lt;br /&gt;    seasonDic.Add("Winter", Color.LightBlue);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Using .TryGetType to find [value] corresponding to the [key]&lt;br /&gt;private Color getSeasonColor(string seasonName)&lt;br /&gt;{&lt;br /&gt;    Color retColor = Color.White;&lt;br /&gt;&lt;br /&gt;    if ( ! string.IsNullOrEmpty(seasonName))&lt;br /&gt;        if ( ! seasonDic.TryGetValue(seasonName, out retColor)&lt;br /&gt;            retColor = Color.White;&lt;br /&gt;&lt;br /&gt;    return retColor;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Retrieve data from a Dictionary by Enumerator&lt;br /&gt;private string getAllSeasons()&lt;br /&gt;{&lt;br /&gt;    StringBuilder sbRetVal = new StringBuilder();&lt;br /&gt;&lt;br /&gt;    Dictionary&lt;string, Color&gt;.Enumerator sEnum =&lt;br /&gt;        seasonDic.GetEnumerator();&lt;br /&gt;&lt;br /&gt;    while (sEnum.MoveNext())&lt;br /&gt;        sbRetVal.AppendLine(sEnum.Current.Key +&lt;br /&gt;                            ": " +&lt;br /&gt;                            sEnum.Current.Value.Name);&lt;br /&gt;&lt;br /&gt;    return sbRetVal.ToString();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Use [KeyValuePair] structure in a [foreach] loop&lt;br /&gt;private string getAllColorSeasons()&lt;br /&gt;{&lt;br /&gt;    StringBuilder sbRetVal = new StringBuilder();&lt;br /&gt;&lt;br /&gt;    foreach( KeyValuePair&lt;string, Color&gt; kvp in seasonDic )&lt;br /&gt;        sbRetVal.AppendLine(kvp.Value.Name + ": " + kvp.Key);&lt;br /&gt;&lt;br /&gt;    return sbRetVal.ToString();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void btnGetAllSeason_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    MessageBox.Show( this.getAllSeasons() +&lt;br /&gt;                     "\r\n" +&lt;br /&gt;                     this.getAllColorSeasons() );&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/2648132302968261880-2827516479074309545?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2827516479074309545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2827516479074309545' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2827516479074309545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2827516479074309545'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-generic-dictionary-types-dictionary.html' title='C# - Generic dictionary Types - Dictionary&lt;TKey, TValue&gt;'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/ShJJotCGyVI/AAAAAAAAAGs/RICV6rjRXTY/s72-c/2009-05-18(Dictionary+Generic+Collection).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5753648407300519377</id><published>2009-05-15T23:55:00.000-07:00</published><updated>2009-05-18T21:40:55.915-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Application.StartupPath - How to get the path for the executable file that started the application?</title><content type='html'>If you want to have access to the path of running application, there is a property that can give you the path. As an example this path can contain other files or folders to keep related data files to youe application and in this way you can work with those files without pointing to static directory addresses.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Application.StartupPath&lt;/span&gt; Property&lt;br /&gt;Namespace:  System.Windows.Forms&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.application.startuppath.aspx"&gt;Application.StartupPath&lt;/a&gt; property gets the path for the executable file that started the application, not including the executable name.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Directory.SetCurrentDirectory&lt;/span&gt; Method&lt;br /&gt;Sets the application's current working directory to the specified directory. &lt;br /&gt;http://msdn.microsoft.com/en-us/library/system.io.directory.setcurrentdirectory.aspx&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;System.IO.Directory.GetCurrentDirectory()&lt;/span&gt;&lt;br /&gt;A string containing the path of the current working directory. &lt;br /&gt;http://msdn.microsoft.com/en-us/library/system.io.directory.getcurrentdirectory.aspx&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Assembly.GetExecutingAssembly&lt;/span&gt; Method&lt;br /&gt;Gets the assembly that contains the code that is currently executing.&lt;br /&gt;http://msdn.microsoft.com/en-us/library/system.reflection.assembly.getexecutingassembly.aspx&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;System.Reflection.Assembly.GetExecutingAssembly().Location&lt;/span&gt;&lt;br /&gt;It returns the file name of the current binary&lt;br /&gt;&lt;br /&gt;The following simple sample can show the result of aboved mentioned methods:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;string dfltDir = @"C:\TEMP";&lt;br /&gt;if( Directory.Exists( dfltDir ) )&lt;br /&gt;Directory.SetCurrentDirectory( dfltDir );&lt;br /&gt;&lt;br /&gt;StringBuilder sb = new StringBuilder();&lt;br /&gt;sb.AppendLine("GetCurrentDirectory(): ");&lt;br /&gt;sb.AppendLine( Directory.GetCurrentDirectory() );&lt;br /&gt;sb.AppendLine();&lt;br /&gt;sb.AppendLine( "Application.StartupPath: " );&lt;br /&gt;sb.AppendLine( Application.StartupPath );&lt;br /&gt;sb.AppendLine();&lt;br /&gt;sb.AppendLine("Assembly.GetExecutingAssembly().Location: "); &lt;br /&gt;sb.AppendLine( System.Reflection.Assembly.GetExecutingAssembly().Location);&lt;br /&gt;sb.AppendLine();&lt;br /&gt;&lt;br /&gt;MessageBox.Show(sb.ToString());&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/2648132302968261880-5753648407300519377?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5753648407300519377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5753648407300519377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5753648407300519377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5753648407300519377'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-applicationstartuppath-how-to-get.html' title='C# - Application.StartupPath - How to get the path for the executable file that started the application?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3390441840158381008</id><published>2009-05-13T22:28:00.001-07:00</published><updated>2009-05-14T07:57:00.537-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - GZipStream to Zip and UnZip with Base64 Encoding</title><content type='html'>First of all, you can find sample code about Encoding and Decoding based on Base64 in the following link:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;C# - UTF8/Base64 Encoder/Decoder&lt;/span&gt;&lt;br /&gt;&lt;a href="http://iborn2code.blogspot.com/search?q=Base64"&gt;http://iborn2code.blogspot.com/search?q=Base64&lt;/a&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;class fbBase64&lt;br /&gt;{&lt;br /&gt;    public static string EncodeToBase64(string theString)&lt;br /&gt;    {&lt;br /&gt;        return Convert.ToBase64String(&lt;br /&gt;               System.Text.Encoding.UTF8.GetBytes(theString));&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public static string DecodeBase64(string theString)&lt;br /&gt;    {&lt;br /&gt;        return System.Text.Encoding.UTF8.GetString(&lt;br /&gt;               Convert.FromBase64String(theString));&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;public static bool GetZipBase64( string str2Zip, out byte[] aryBase64Zip )&lt;br /&gt;{&lt;br /&gt;  bool retVal = true;&lt;br /&gt;  aryBase64Zip = null;&lt;br /&gt;&lt;br /&gt;  try&lt;br /&gt;  {&lt;br /&gt;    using (MemoryStream ms = new MemoryStream())&lt;br /&gt;    {&lt;br /&gt;      using (GZipStream gzs = new GZipStream(ms, CompressionMode.Compress))&lt;br /&gt;      {&lt;br /&gt;        using (StreamWriter sw = new StreamWriter(gzs))&lt;br /&gt;        {&lt;br /&gt;          sw.Write(fbBase64.EncodeToBase64(str2Zip));&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;      aryBase64Zip = ms.ToArray();&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;  catch (Exception ex)&lt;br /&gt;  {&lt;br /&gt;    retVal = false;&lt;br /&gt;    MessageBox.Show(ex.ToString());&lt;br /&gt;  }&lt;br /&gt;  return retVal;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public static bool GetUnZipUnBase64( byte[] zipData, out string strOrgnl)&lt;br /&gt;{&lt;br /&gt;  bool retVal = true;&lt;br /&gt;  strOrgnl = null;&lt;br /&gt;&lt;br /&gt;  try&lt;br /&gt;  {&lt;br /&gt;    using (MemoryStream ms = new MemoryStream(zipData) )&lt;br /&gt;    {&lt;br /&gt;      using (GZipStream gzs = new GZipStream(ms, CompressionMode.Decompress))&lt;br /&gt;      {&lt;br /&gt;        using ( StreamReader sr = new StreamReader(gzs) )&lt;br /&gt;        {&lt;br /&gt;          strOrgnl = fbBase64.DecodeBase64( sr.ReadToEnd() );&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;  catch (Exception ex)&lt;br /&gt;  {&lt;br /&gt;    retVal = false;&lt;br /&gt;    MessageBox.Show(ex.ToString());&lt;br /&gt;  }&lt;br /&gt;  return retVal;&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/2648132302968261880-3390441840158381008?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3390441840158381008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3390441840158381008' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3390441840158381008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3390441840158381008'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-gzipstream-to-zip-and-unzip-with.html' title='C# - GZipStream to Zip and UnZip with Base64 Encoding'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7528208298827377212</id><published>2009-05-11T23:47:00.000-07:00</published><updated>2009-05-12T00:03:15.609-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to read or modify value of a key in app.Config</title><content type='html'>&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Configuration;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt; &lt;br /&gt;namespace myApp&lt;br /&gt;{&lt;br /&gt;    class theAppCnfg&lt;br /&gt;    {&lt;br /&gt;        public static string GetKey( string keyName )&lt;br /&gt;        {&lt;br /&gt;            string retVal = string.Empty;&lt;br /&gt;            AppSettingsReader appCnfgRdr = new AppSettingsReader();&lt;br /&gt;            retVal = (string) appCnfgRdr.GetValue(keyName,typeof(string));&lt;br /&gt;           &lt;br /&gt;            return retVal;&lt;br /&gt;        }&lt;br /&gt; &lt;br /&gt;        public static void ModifyKey(string keyName, string keyValue)&lt;br /&gt;        {&lt;br /&gt;            Configuration cnfg =&lt;br /&gt;               ConfigurationManager.OpenExeConfiguration(&lt;br /&gt;                             ConfigurationUserLevel.None );&lt;br /&gt;            cnfg.AppSettings.Settings[keyName].Value = keyValue;&lt;br /&gt;            cnfg.Save(ConfigurationSaveMode.Modified);&lt;br /&gt;        }&lt;br /&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/2648132302968261880-7528208298827377212?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7528208298827377212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7528208298827377212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7528208298827377212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7528208298827377212'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-how-to-read-or-modify-value-of-key-in.html' title='C# - How to read or modify value of a key in app.Config'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-9196032457347964615</id><published>2009-05-10T23:50:00.001-07:00</published><updated>2009-05-17T02:47:11.073-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Graphics Object - Pie Chart</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sg_dFpBMJwI/AAAAAAAAAGk/8ASnyP6TIBc/s1600-h/2009-05-17(pieChart).jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 240px; height: 260px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sg_dFpBMJwI/AAAAAAAAAGk/8ASnyP6TIBc/s400/2009-05-17(pieChart).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5336727172437255938" /&gt;&lt;/a&gt;&lt;br /&gt;This one comes with a &lt;span style="font-weight:bold;"&gt;[Form]&lt;/span&gt; which contains a &lt;span style="font-weight:bold;"&gt;[PictureBox]&lt;/span&gt; who called &lt;span style="font-weight:bold;"&gt;[chart]&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We have two classes:&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;[piePart]&lt;/span&gt; that collects name, value, and color for each pie part in our pie chart&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;[pieChart]&lt;/span&gt; contains a generic List collection based on [piePart] class and a method which draw the chart which called [public Image doPieChart(Size pieSize)] and returns a bitmap or generated pie chart.&lt;br /&gt;&lt;br /&gt;Codes for pieChart and piePart classes:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Drawing;&lt;br /&gt;using System.Drawing.Drawing2D;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;&lt;br /&gt;namespace PieChart&lt;br /&gt;{&lt;br /&gt;  public class piePart&lt;br /&gt;  {&lt;br /&gt;      public string pieName;&lt;br /&gt;      public float pieVal;&lt;br /&gt;      public Color pieColor;&lt;br /&gt;&lt;br /&gt;      public piePart()&lt;br /&gt;      {&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      public piePart(string _pieName, float _pieVal, Color _pieColor)&lt;br /&gt;      {&lt;br /&gt;          pieName = _pieName;&lt;br /&gt;          pieVal = _pieVal;&lt;br /&gt;          pieColor = _pieColor;&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  public class pieChart&lt;br /&gt;  {&lt;br /&gt;      public List&lt;piePart&gt; lstPiePart = new List&lt;piePart&gt;();&lt;br /&gt;&lt;br /&gt;      public pieChart()&lt;br /&gt;      {&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      public Image doPieChart(Size pieSize)&lt;br /&gt;      {&lt;br /&gt;          if (lstPiePart.Count == 0) return null;&lt;br /&gt;&lt;br /&gt;          Bitmap pieBmp = new Bitmap(pieSize.Width, pieSize.Height);&lt;br /&gt;          Graphics grfx = Graphics.FromImage(pieBmp);&lt;br /&gt;          grfx.SmoothingMode = SmoothingMode.HighQuality;&lt;br /&gt;&lt;br /&gt;          float totalPieValues = 0;&lt;br /&gt;          foreach (piePart aPie in lstPiePart)&lt;br /&gt;          {&lt;br /&gt;              if (aPie.pieVal &lt;= 0)&lt;br /&gt;              {&lt;br /&gt;                  string errMag =&lt;br /&gt;                      "A Pie must have a positive value";&lt;br /&gt;                  throw new ArgumentException(errMag);&lt;br /&gt;              }&lt;br /&gt;              totalPieValues += aPie.pieVal;&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;          if ( totalPieValues &lt;= 0 )&lt;br /&gt;          {&lt;br /&gt;              string errMsg =&lt;br /&gt;                "At least one Pie must have a greater than Zero value";&lt;br /&gt;              throw new ArgumentException(errMsg);&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;          Rectangle pieRect =&lt;br /&gt;              new Rectangle(1, 1, pieSize.Width - 2, pieSize.Height - 2);&lt;br /&gt;          Pen piePen = new Pen(Color.Black, 1);&lt;br /&gt;          float pieStartAngle = 0;&lt;br /&gt;&lt;br /&gt;          foreach (piePart aPie in lstPiePart)&lt;br /&gt;          {&lt;br /&gt;              Brush pieBrush =&lt;br /&gt;                  new LinearGradientBrush(pieRect,&lt;br /&gt;                                          aPie.pieColor,&lt;br /&gt;                                          Color.White,&lt;br /&gt;                                          (float)45 );&lt;br /&gt;              float pieSweepAngle = (aPie.pieVal / totalPieValues) * 360;&lt;br /&gt;              grfx.FillPie(pieBrush, pieRect, pieStartAngle, pieSweepAngle);&lt;br /&gt;              grfx.DrawPie(piePen, pieRect, pieStartAngle, pieSweepAngle);&lt;br /&gt;              pieStartAngle += pieSweepAngle;&lt;br /&gt;          }&lt;br /&gt;          return pieBmp;&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Codes for Form class:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Drawing;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Windows.Forms;&lt;br /&gt;using System.ComponentModel;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;&lt;br /&gt;namespace PieChart&lt;br /&gt;{&lt;br /&gt;  public partial class Form1 : Form&lt;br /&gt;  {&lt;br /&gt;      public Form1()&lt;br /&gt;      {&lt;br /&gt;          InitializeComponent();&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      private void Draw(object sender, PaintEventArgs e)&lt;br /&gt;      {&lt;br /&gt;          Draw();&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      private void Draw()&lt;br /&gt;      {&lt;br /&gt;          pieChart myChart = new pieChart();&lt;br /&gt;          myChart.lstPiePart.Add(new piePart( "Spring",&lt;br /&gt;                                              (float) 118.79,&lt;br /&gt;                                              Color.Green ) );&lt;br /&gt;          myChart.lstPiePart.Add(new piePart( "Summer",&lt;br /&gt;                                              (float) 67.23,&lt;br /&gt;                                              Color.Red));&lt;br /&gt;          myChart.lstPiePart.Add(new piePart( "Autumn",&lt;br /&gt;                                              (float) 96.14,&lt;br /&gt;                                              Color.Yellow));&lt;br /&gt;          myChart.lstPiePart.Add(new piePart( "Winter",&lt;br /&gt;                                              (float) 121.92,&lt;br /&gt;                                              Color.Blue));&lt;br /&gt;&lt;br /&gt;          chart.Image = myChart.doPieChart( new Size(200, 200 ) );&lt;br /&gt;      }&lt;br /&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/2648132302968261880-9196032457347964615?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/9196032457347964615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=9196032457347964615' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/9196032457347964615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/9196032457347964615'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-graphics-object-pie-chart.html' title='C# - Graphics Object - Pie Chart'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sg_dFpBMJwI/AAAAAAAAAGk/8ASnyP6TIBc/s72-c/2009-05-17(pieChart).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-1843568156327793016</id><published>2009-05-08T23:57:00.001-07:00</published><updated>2009-05-12T01:45:08.421-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - System.Drawing namespace &amp; Graphics Object</title><content type='html'>To have a graphic UI, .NET prepared many graphic classes to display graphical objects&lt;br /&gt;on a form or other Windows Forms control.&lt;br /&gt;&lt;br /&gt;The &lt;span style="font-weight:bold;"&gt;System.Drawing&lt;/span&gt; namespace is included in .NET Framework to deal with graphic stuff.&lt;br /&gt;The System.Drawing namespace contains many &lt;span style="font-weight:bold;"&gt;classes &lt;/span&gt;and the most common ones are as following:&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Graphics&lt;/span&gt;] is used to draw to display devices&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Pen&lt;/span&gt;] is used to draw lines and curves&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Brush&lt;/span&gt;] and other classes drived from it are used to fill shapes.&lt;br /&gt;- ...&lt;br /&gt;&lt;br /&gt;The System.Drawing namespace contains some &lt;span style="font-weight:bold;"&gt;structures&lt;/span&gt; too, and most important ones are as following:&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Color&lt;/span&gt;] which represent a color&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Point&lt;/span&gt;] that has x and y cordinates for a point in two dimensional plane.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Rectangle&lt;/span&gt;] it has four integer values that represent the location and size of&lt;br /&gt;a rectangle.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Size&lt;/span&gt;] Stores width and height of a rectabgle by integer values.&lt;br /&gt;- ...&lt;br /&gt;&lt;br /&gt;How to &lt;span style="font-weight:bold;"&gt;draw a line or shape&lt;/span&gt;:&lt;br /&gt;- Create a [&lt;span style="font-weight:bold;"&gt;Graphics&lt;/span&gt;] object, using System.Windows.Forms.Control.CreateGraphics method.&lt;br /&gt;- Create a [&lt;span style="font-weight:bold;"&gt;Pen&lt;/span&gt;] object.&lt;br /&gt;- Call a &lt;span style="font-weight:bold;"&gt;method &lt;/span&gt;from the Graphics object to draw a shape using the [Pen].&lt;br /&gt;&lt;br /&gt;Some of the &lt;span style="font-weight:bold;"&gt;Graphics object methods&lt;/span&gt;:&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;Clear&lt;/span&gt;] Fills the entire drawing surface with a color.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawEllipse&lt;/span&gt;] Draws an ellipse or a circle by a pair of height and width.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawIcon&lt;/span&gt;] Draws image of an icon at specified coordinates.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawImage&lt;/span&gt;] Draws an image at specified coordinates.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawLine&lt;/span&gt;] Draws a line between two points.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawLines&lt;/span&gt;] Draws a series of lines by an array of Point structures.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawPath&lt;/span&gt;] Draws a series of connected lines and curves.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawPie&lt;/span&gt;] Draws a pie shape, it needs a upper-left coordinate pair, a width, a height, and two radial lines.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawPolygon&lt;/span&gt;] Draws a multi sides shape by an array of Point structures.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawRectangle&lt;/span&gt;] Draws a square shape by a coordinate pair, a width, and a height.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawRectangles&lt;/span&gt;] Draws multiple rectangles by Rectangle structures.&lt;br /&gt;- [&lt;span style="font-weight:bold;"&gt;DrawString&lt;/span&gt;] Draws a text string at the specified location, and specified Brush and Font.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-1843568156327793016?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/1843568156327793016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=1843568156327793016' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1843568156327793016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/1843568156327793016'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-graphics-object.html' title='C# - System.Drawing namespace &amp; Graphics Object'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-7031070166751987430</id><published>2009-05-05T01:36:00.001-07:00</published><updated>2009-05-05T01:50:39.007-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - Sample code - System.Xml.Serialization and XML serialization attributes</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sf_9bOgikRI/AAAAAAAAAGc/HhjJWBLHhKY/s1600-h/2009-05-05(XmlSerializer).jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 356px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sf_9bOgikRI/AAAAAAAAAGc/HhjJWBLHhKY/s400/2009-05-05(XmlSerializer).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5332259128022831378" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;    [XmlRoot ("Produts")]&lt;br /&gt;    public class product2Sell&lt;br /&gt;    {&lt;br /&gt;        [XmlAttribute] public int prdId;&lt;br /&gt;        public string prdName;&lt;br /&gt;        public decimal prdPrice;&lt;br /&gt;        public int prdQty;&lt;br /&gt;        public DateTime prdLastOrderDate;&lt;br /&gt;        [XmlIgnore] public DateTime prdLastShipDate;&lt;br /&gt;&lt;br /&gt;        public product2Sell()&lt;br /&gt;        {&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;private void btnXmlSerialize_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    List&lt;product2Sell&gt; lstProduct = new List&lt;product2Sell&gt;();&lt;br /&gt;    for (int i = 0; i &lt; 3; i++)&lt;br /&gt;    {&lt;br /&gt;       product2Sell prdItem = new product2Sell();&lt;br /&gt;       prdItem.prdId = i;&lt;br /&gt;       prdItem.prdName = "Product" + i.ToString();&lt;br /&gt;       prdItem.prdPrice = i * 10.75m;&lt;br /&gt;       prdItem.prdQty = i * 3 + 5;&lt;br /&gt;       prdItem.prdLastOrderDate = DateTime.Now.AddDays(-i * 3);&lt;br /&gt;       prdItem.prdLastShipDate = DateTime.Now.AddDays(i * 2);&lt;br /&gt;&lt;br /&gt;       lstProduct.Add(prdItem);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Create))&lt;br /&gt;    {&lt;br /&gt;       XmlSerializer xs = new XmlSerializer( typeof(List&lt;product2Sell&gt;) );&lt;br /&gt;       xs.Serialize(fs, lstProduct);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void btnXmlDeserialize_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Open))&lt;br /&gt;    {&lt;br /&gt;       XmlSerializer xs =&lt;br /&gt;            new XmlSerializer(typeof(List&lt;product2Sell&gt;) );&lt;br /&gt;       List&lt;product2Sell&gt; lstPrdItem =&lt;br /&gt;            (List&lt;product2Sell&gt;) xs.Deserialize(fs);&lt;br /&gt;&lt;br /&gt;       MessageBox.Show("# of products: " + lstPrdItem.Count.ToString());&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/2648132302968261880-7031070166751987430?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/7031070166751987430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=7031070166751987430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7031070166751987430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/7031070166751987430'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-sample-code-systemxmlserialization.html' title='C# - Sample code - System.Xml.Serialization and XML serialization attributes'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/Sf_9bOgikRI/AAAAAAAAAGc/HhjJWBLHhKY/s72-c/2009-05-05(XmlSerializer).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3624040050079328232</id><published>2009-05-03T23:49:00.000-07:00</published><updated>2009-05-05T01:35:34.823-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - System.Xml.Serialization namespace</title><content type='html'>Let's review something about XML serialization first:&lt;br /&gt;- It provides interoperability and communicability with different platform and also flexibility to conform to XML schema as a pattern.&lt;br /&gt;- XML serialization can not be used to serialize private data.&lt;br /&gt;- A class which wants to be serialized by XML serialization should be public and all members should be defined as public too, and you have to create a parameterless constructor for that class.&lt;br /&gt;- Arrays, collections, Data sets, instances of &lt;span style="font-style:italic;"&gt;XmlElement&lt;/span&gt; or &lt;span style="font-style:italic;"&gt;XmlNote&lt;/span&gt; class can be  serialized with &lt;span style="font-weight:bold;"&gt;XmlSerializer&lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Serialization Attributes&lt;/span&gt;&lt;br /&gt;It's possible to use attributes to create XML documents that conform to specific standards.&lt;br /&gt;Example:&lt;br /&gt;- [XmlIgnore] in front of a public properties and fields will cuase to ignore it when the class is serialized, it's similar to [NonSerialized] attribute in standard serialization. &lt;br /&gt;- [AmlAttribute] will cause to consider the serialized member as XML attribute.&lt;br /&gt;&lt;br /&gt;For more details and to see the list of attributes, please look at the following URL:&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlattributes_members.aspx"&gt;XmlAttributes Members&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3624040050079328232?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3624040050079328232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3624040050079328232' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3624040050079328232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3624040050079328232'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-systemxmlserialization-namespace.html' title='C# - System.Xml.Serialization namespace'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3117181274309292257</id><published>2009-05-02T22:42:00.000-07:00</published><updated>2009-05-02T23:00:11.656-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - System.Runtime.Serialization namespace</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf0wv5W2kSI/AAAAAAAAAGM/TZPIYdJs47g/s1600-h/2009-05-02(Formatters.Soap).jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 330px; height: 200px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf0wv5W2kSI/AAAAAAAAAGM/TZPIYdJs47g/s400/2009-05-02(Formatters.Soap).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5331471133285191970" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Serialization&lt;/span&gt; is the process of converting data into a byte stream that can be stored or transferred. The rule is to use BinarryFormatter for the best efficiency and SoapFormatter when you require portability, SoapFormatter provides less efficient but more interoperable rather than BinaryFormatter. There are two classes for formatting serialized data in the System.Runtime.Serialization namespace:&lt;br /&gt;&lt;br /&gt;* &lt;span style="font-weight:bold;"&gt;BinaryFormatter&lt;/span&gt;&lt;br /&gt;It's the most efficient way to serialize objetcs that will be available to use just by .NET Frameworkbased applications. If you are sure that your client opens the serialized objects by a .NET Framework application, BinaryFormatter would be the best.&lt;br /&gt;&lt;br /&gt;* &lt;span style="font-weight:bold;"&gt;SoapFormatter&lt;/span&gt;&lt;br /&gt;it's located in System.Runtime.Serialization.Formatters.Soap, and is reliable way to serialize objects that will bbe transmitted across a network or read by a non .NET Framework based application. SoapFormatter can work instead of BinaryFormatter too but the serialized object consume considerabaly more space. SOAP WEB services were the primarily target for SoapFormatter and even though that it can format data using Xml, but the most flexible way to perform serialization is using XML serialization for such a kind of situations.&lt;br /&gt;&lt;br /&gt;SoapFormatter is not included as default like BinaryFormatter and you need to add &lt;span style="font-weight:bold;"&gt;System.Runtime.Serialization.Formatters.Soap.dll&lt;/span&gt; as reference.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3117181274309292257?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3117181274309292257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3117181274309292257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3117181274309292257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3117181274309292257'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-systemruntimeserialization-namespace.html' title='C# - System.Runtime.Serialization namespace'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf0wv5W2kSI/AAAAAAAAAGM/TZPIYdJs47g/s72-c/2009-05-02(Formatters.Soap).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4165770603553201492</id><published>2009-05-01T23:53:00.000-07:00</published><updated>2009-05-02T23:46:56.817-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to implement OnDeserialization for [Serializable] class with [NonSerialized] members</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf093CEparI/AAAAAAAAAGU/L4FzrLogRrM/s1600-h/2009-05-02(soapFormatter-DeSerializationCallBack).jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 260px;" src="http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf093CEparI/AAAAAAAAAGU/L4FzrLogRrM/s400/2009-05-02(soapFormatter-DeSerializationCallBack).jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5331485549534997170" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;[Serializable]&lt;br /&gt;class ProductItem : IDeserializationCallback&lt;br /&gt;{&lt;br /&gt;    #region Fields&lt;br /&gt;    private int prdId;&lt;br /&gt;    private string prdName;&lt;br /&gt;    private decimal prdPrice;&lt;br /&gt;    [NonSerialized] private decimal prdTax;&lt;br /&gt;    #endregion&lt;br /&gt;&lt;br /&gt;    #region Properties&lt;br /&gt;    public int PrdId&lt;br /&gt;    {&lt;br /&gt;        get { return prdId; }&lt;br /&gt;        set { prdId = value; }&lt;br /&gt;    }&lt;br /&gt;    public string PrdName&lt;br /&gt;    {&lt;br /&gt;        get { return prdName; }&lt;br /&gt;        set { prdName = value; }&lt;br /&gt;    }&lt;br /&gt;    public decimal PrdPrice&lt;br /&gt;    {&lt;br /&gt;        get { return prdPrice; }&lt;br /&gt;        set { prdPrice = value; }&lt;br /&gt;    }&lt;br /&gt;    public decimal PrdTax&lt;br /&gt;    {&lt;br /&gt;        get { return prdTax; }&lt;br /&gt;        set { prdTax = value; }&lt;br /&gt;    }&lt;br /&gt;    #endregion&lt;br /&gt;&lt;br /&gt;    public ProductItem(int _prdId, string _prdName, decimal _prdPrice)&lt;br /&gt;    {&lt;br /&gt;        PrdId = _prdId;&lt;br /&gt;        PrdName = _prdName;&lt;br /&gt;        PrdPrice = _prdPrice;&lt;br /&gt;        PrdTax = _prdPrice * 0.12m;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    void IDeserializationCallback.OnDeserialization(object sender)&lt;br /&gt;    {&lt;br /&gt;        // Calculate tax after deserialization completes&lt;br /&gt;        PrdTax = PrdPrice * 0.12m;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;private void btnSerializeCallBack_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    ProductItem prdItemObj = new ProductItem(1, "Cranker", 10);&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Create))&lt;br /&gt;    {&lt;br /&gt;        SoapFormatter sf = new SoapFormatter();&lt;br /&gt;        sf.Serialize(fs, prdItemObj);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void btnDeSerializeCallBack_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Open))&lt;br /&gt;    {&lt;br /&gt;        SoapFormatter sf = new SoapFormatter();&lt;br /&gt;        ProductItem prdItemObj = (ProductItem)sf.Deserialize(fs);&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/2648132302968261880-4165770603553201492?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4165770603553201492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4165770603553201492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4165770603553201492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4165770603553201492'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/05/c-how-to-implement-ondeserialization.html' title='C# - How to implement OnDeserialization for [Serializable] class with [NonSerialized] members'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e4Tel4Sa2XA/Sf093CEparI/AAAAAAAAAGU/L4FzrLogRrM/s72-c/2009-05-02(soapFormatter-DeSerializationCallBack).jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5944606845954929460</id><published>2009-04-30T22:55:00.000-07:00</published><updated>2009-05-02T22:41:19.561-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to Serialize/Deserialize</title><content type='html'>As you know, when you want to send an object to another process, or transmit an object across the network (LAN, Intranet, WAN, Internet), you need to "serialize" the object. Serialization is the process of converting an object into a linear sequence of bytes and Deserialization is the process of converting a previously serialized sequence of bytes into an object.&lt;br /&gt;&lt;br /&gt;Serialization has been a key part of .NET since version 1.0 and .NET Framework, implemented "Serialization" in the "&lt;span style="font-weight:bold;"&gt;System.Runtime.Serialization&lt;/span&gt;" namespace, and to serialize an object you can choose between, Binary, SOAP, XML, and custom serialization. There are libraries to serialize to special formats like comma delimited, etc ... too.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;C# - How to Create a serializable (and deserializable) custom class&lt;br /&gt;You need to add [Serializable] attribute to your class. The default handling of serialization, serialize all the members, including private members.&lt;br /&gt;It's possible to customize and control serialization of your class depends on custom requirements either to improve efficiency.&lt;br /&gt;&lt;br /&gt;C# - How to disable serialization of a member&lt;br /&gt;Just add [NonSerialized] attribute in front of the specific member, it causes to exclude that member from serialized version of the object. sometimes, we need to reduce the size of our object to transfer it across the network then you can bypass calculable members and regenerate them all back in destination.&lt;br /&gt;&lt;br /&gt;To enable your class to initialize the [NonSerialized] members automatically use OnDeserialization, this method will be called after deserializing is complete.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System.Runtime.Serialization;&lt;br /&gt;using System.Runtime.Serialization.Formatters.Binary;&lt;br /&gt;...&lt;br /&gt;private void btnSerialize_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Create))&lt;br /&gt;    {&lt;br /&gt;        BinaryFormatter bf = new BinaryFormatter();&lt;br /&gt;        bf.Serialize(fs, txt4Serialization.Text);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void btnDeSerialize_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;    string fName = @"C:\FB\Tst.data";&lt;br /&gt;    using (FileStream fs = new FileStream(fName, FileMode.Open))&lt;br /&gt;    {&lt;br /&gt;        BinaryFormatter bf = new BinaryFormatter();&lt;br /&gt;        txtDeserialized.Text = (string)bf.Deserialize(fs);&lt;br /&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/2648132302968261880-5944606845954929460?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5944606845954929460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5944606845954929460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5944606845954929460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5944606845954929460'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-how-to-serializedeserialize.html' title='C# - How to Serialize/Deserialize'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3497558517635224850</id><published>2009-04-27T23:12:00.000-07:00</published><updated>2009-04-27T23:23:57.494-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to have a reverse ordered Generic SortedList collection</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfafmxTIe_I/AAAAAAAAAGE/8NDIPjmnocE/s1600-h/2009-04-27-ReverseOrderedSortedList.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 216px; height: 227px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfafmxTIe_I/AAAAAAAAAGE/8NDIPjmnocE/s400/2009-04-27-ReverseOrderedSortedList.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5329622697456991218" /&gt;&lt;/a&gt;&lt;br /&gt;The folowing code sample creates a generic SortedList&lt;T,U&gt; using DateTimes as the keys and integers as the values.. The normal behavior of a generic SortedList&lt;T,U&gt; collection is to sort the added items in ascending order but this example use generic IComparer&lt;T&gt; to sort it in reverse order and the sample code show how to loop through the SortedList members (It's possible to loop by index too).&lt;br /&gt;&lt;br /&gt;A System.Collections.Generic.IComparer to sort based on DateTime in reverse order:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;public class DecendingDateCompare : IComparer&lt;DateTime&gt;&lt;br /&gt;{&lt;br /&gt;    public int Compare(DateTime x, DateTime y)&lt;br /&gt;    {&lt;br /&gt;        return x.CompareTo(y) * -1;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;A sample code to test:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;...&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;...&lt;br /&gt;SortedList&lt;DateTime, int&gt; aSortedList =&lt;br /&gt;    new SortedList&lt;DateTime, int&gt;(new DecendingDateCompare());&lt;br /&gt;&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(-10), 100);&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(10), 10);&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(-5), 90);&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(5), 20);&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(-3), 80);&lt;br /&gt;aSortedList.Add(DateTime.Now.AddDays(3), 30);&lt;br /&gt;&lt;br /&gt;StringBuilder sb = new StringBuilder();&lt;br /&gt;IDictionaryEnumerator iDicEnum =&lt;br /&gt;    (IDictionaryEnumerator) aSortedList.GetEnumerator();&lt;br /&gt;    &lt;br /&gt;while( iDicEnum.MoveNext() )&lt;br /&gt;    sb.AppendLine( iDicEnum.Key.ToString() +&lt;br /&gt;                   ", " +&lt;br /&gt;                   iDicEnum.Value.ToString() );&lt;br /&gt; &lt;br /&gt;MessageBox.Show(sb.ToString());&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/2648132302968261880-3497558517635224850?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3497558517635224850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3497558517635224850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3497558517635224850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3497558517635224850'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-how-to-have-reverse-ordered-generic.html' title='C# - How to have a reverse ordered Generic SortedList&lt;T,U&gt; collection'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfafmxTIe_I/AAAAAAAAAGE/8NDIPjmnocE/s72-c/2009-04-27-ReverseOrderedSortedList.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-8321185107267597654</id><published>2009-04-24T21:59:00.000-07:00</published><updated>2009-04-24T22:12:56.580-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Regex'/><title type='text'>Regex - Expresso - winning regular expression development tool</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfKb1BVPvVI/AAAAAAAAAF8/kvLRfPGoJwo/s1600-h/Cup.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 105px; height: 82px;" src="http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfKb1BVPvVI/AAAAAAAAAF8/kvLRfPGoJwo/s400/Cup.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5328492644325637458" /&gt;&lt;/a&gt;&lt;br /&gt;Expresso is a free regular expression development tool. It's full-featured development environment for the experienced programmer who wants to code with knowledge of regular expressions and needs to test, analyze, and generate applicable and accurate regular expressions. Expresso code by Jim Hollenhorst.&lt;br /&gt;&lt;br /&gt;It's an integrated regular expression editor, tester, analyzer with rich library of regular expressions ready to use for different categories.&lt;br /&gt;&lt;br /&gt;To find out its features, look at the following link:&lt;br /&gt;&lt;a href="http://www.ultrapico.com/Expresso.htm"&gt;http://www.ultrapico.com/Expresso.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;To download:&lt;br /&gt;&lt;a href="http://www.ultrapico.com/ExpressoDownload.htm"&gt;http://www.ultrapico.com/ExpressoDownload.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More links:&lt;br /&gt;&lt;br /&gt;Expresso in www.codeproject.com&lt;br /&gt;&lt;a href="http://www.codeproject.com/KB/dotnet/expresso.aspx"&gt;http://www.codeproject.com/KB/dotnet/expresso.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The 30 Minute Regex Tutorial (by Jim Hollenhorst)&lt;br /&gt;&lt;a href="http://www.codeproject.com/KB/dotnet/regextutorial.aspx"&gt;http://www.codeproject.com/KB/dotnet/regextutorial.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-8321185107267597654?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/8321185107267597654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=8321185107267597654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8321185107267597654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/8321185107267597654'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/regex-expresso-winning-regular.html' title='Regex - Expresso - winning regular expression development tool'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_e4Tel4Sa2XA/SfKb1BVPvVI/AAAAAAAAAF8/kvLRfPGoJwo/s72-c/Cup.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-4451459647571762976</id><published>2009-04-22T23:50:00.001-07:00</published><updated>2009-04-23T00:16:44.551-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - A class to fade a Form</title><content type='html'>.Opacity property of form is a number between 0 and 1 (default), then if you change it from 1 to some lower values, you reduced the opacity. In the following sample, the formFader class contains a Static FormFaderWithStep method which accept the target form and another argument between 0 to 255 that show the number of steps which you want to fade your form base on it.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Windows.Forms;&lt;br /&gt;&lt;br /&gt;namespace tstBed&lt;br /&gt;{&lt;br /&gt;    class formFader&lt;br /&gt;    {&lt;br /&gt;&lt;br /&gt;        public static void FormFaderWithStep(Form frm2Fade,&lt;br /&gt;                                             byte fadeNumOfSteps)&lt;br /&gt;        {&lt;br /&gt;            if ( (frm2Fade.Opacity != 1) || (fadeNumOfSteps &lt; 1) )&lt;br /&gt;                return;&lt;br /&gt;            double fadeStep = frm2Fade.Opacity / fadeNumOfSteps;&lt;br /&gt;&lt;br /&gt;            for( byte iCntr = 0; iCntr &lt; fadeNumOfSteps; iCntr ++ )&lt;br /&gt;            {&lt;br /&gt;                frm2Fade.Opacity -= fadeStep;&lt;br /&gt;                frm2Fade.Refresh();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Now just you need to find override version of Dispose event in your form designer code file for your form class (Example: form1.Designer.cs) and add a line to call the fader method, for example: &lt;span style="font-weight:bold;"&gt;formFader.FormFaderWithStep(this, 100);&lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;protected override void Dispose(bool disposing)&lt;br /&gt;{&lt;br /&gt;   formFader.FormFaderWithStep(this, 100);&lt;br /&gt;   if (disposing &amp;&amp; (components != null))&lt;br /&gt;   {&lt;br /&gt;      components.Dispose();&lt;br /&gt;   }&lt;br /&gt;   base.Dispose(disposing);&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/2648132302968261880-4451459647571762976?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/4451459647571762976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=4451459647571762976' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4451459647571762976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/4451459647571762976'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-class-to-fade-form.html' title='C# - A class to fade a Form'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5979738463106914428</id><published>2009-04-21T23:46:00.000-07:00</published><updated>2009-04-21T23:54:37.048-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='DataGridView'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - A custom DataGridView class with always vertical scroll bar visible</title><content type='html'>Depend on the data which you want to show in a DataGridView, sometimes you need to keep vertical scroll bars always visible. If you don't have enough row to fill the DataGridView vertically, and you aligned and configured the columns' width for situations which data show with vertical scroll bar, then it's better to show the bar always.&lt;br /&gt;&lt;br /&gt;The only thing which you need to do the job, is to set the VerticalScrollBar.Visible property to "true" in VisibleChanged event. I added dgvSetVerticalBar to fix the position of scroll bar, and it's necessary to call it in Load event of form which contains this custom DataGridView.&lt;br /&gt;&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Text;&lt;br /&gt;using System.Windows.Forms;&lt;br /&gt;using System.Collections.Generic;&lt;br /&gt; &lt;br /&gt;namespace myNameSpace&lt;br /&gt;{&lt;br /&gt;    public partial class myCustomDGV : DataGridView&lt;br /&gt;    {&lt;br /&gt;        public myCustomDGV()&lt;br /&gt;        {&lt;br /&gt;            // InitializeComponent();&lt;br /&gt;            this.VerticalScrollBar.Visible = true;&lt;br /&gt;            this.VerticalScrollBar.VisibleChanged +=&lt;br /&gt;             new EventHandler(VerticalScrollBar_VisibleChanged);&lt;br /&gt; &lt;br /&gt;            this.AllowUserToOrderColumns = false;&lt;br /&gt;            this.AllowUserToResizeColumns = false;&lt;br /&gt;            this.AllowUserToResizeRows = false;&lt;br /&gt;            this.RowHeadersVisible = false;&lt;br /&gt;        }&lt;br /&gt; &lt;br /&gt;        void VerticalScrollBar_VisibleChanged(object sender, EventArgs e)&lt;br /&gt;        {&lt;br /&gt;            this.VerticalScrollBar.Visible = true;&lt;br /&gt;        }&lt;br /&gt; &lt;br /&gt;        public void dgvSetVerticalBar()&lt;br /&gt;        {&lt;br /&gt;            this.VerticalScrollBar.SetBounds(&lt;br /&gt;                this.Width - this.VerticalScrollBar.Width - 1,&lt;br /&gt;                this.VerticalScrollBar.Location.Y + 1,&lt;br /&gt;                this.VerticalScrollBar.Width,&lt;br /&gt;                this.Height - 2);&lt;br /&gt;        }&lt;br /&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/2648132302968261880-5979738463106914428?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5979738463106914428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5979738463106914428' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5979738463106914428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5979738463106914428'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-custom-datagridview-class-with-always.html' title='C# - A custom DataGridView class with always vertical scroll bar visible'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3670507678201247993</id><published>2009-04-20T23:53:00.000-07:00</published><updated>2009-04-20T23:56:41.349-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='DataGridView'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - DataGridViewColumn.SortMode</title><content type='html'>.SortMode Property is related to the sort mode for the column in DataGridView control.&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcolumn.sortmode.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcolumn.sortmode.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3670507678201247993?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3670507678201247993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3670507678201247993' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3670507678201247993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3670507678201247993'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-datagridviewcolumnsortmode.html' title='C# - DataGridViewColumn.SortMode'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5365799314535414031</id><published>2009-04-19T16:14:00.000-07:00</published><updated>2009-04-19T16:23:59.593-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freebies'/><category scheme='http://www.blogger.com/atom/ns#' term='Regex'/><title type='text'>Regex - Free sources about regular expressions</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SeuyalxunaI/AAAAAAAAAF0/1aGbnFWgnMY/s1600-h/RegexCheatSheet.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 204px;" src="http://2.bp.blogspot.com/_e4Tel4Sa2XA/SeuyalxunaI/AAAAAAAAAF0/1aGbnFWgnMY/s400/RegexCheatSheet.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5326547154182774178" /&gt;&lt;/a&gt;&lt;br /&gt;A very valuable source for regular expressions:&lt;br /&gt;&lt;a href="http://www.regexlib.com/"&gt;http://www.regexlib.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Regular expression cheat sheets:&lt;br /&gt;&lt;a href="http://regexlib.com/CheatSheet.aspx"&gt;http://regexlib.com/CheatSheet.aspx&lt;/a&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;a href="http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/"&gt;http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/&lt;/a&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;a href="http://opencompany.org/download/regex-cheatsheet.pdf"&gt;http://opencompany.org/download/regex-cheatsheet.pdf&lt;/a&gt;&lt;br /&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5365799314535414031?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5365799314535414031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5365799314535414031' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5365799314535414031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5365799314535414031'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/regex-free-sources-about-regular.html' title='Regex - Free sources about regular expressions'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SeuyalxunaI/AAAAAAAAAF0/1aGbnFWgnMY/s72-c/RegexCheatSheet.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-5053521841340000108</id><published>2009-04-19T15:49:00.000-07:00</published><updated>2009-04-19T16:11:42.039-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Regex'/><title type='text'>Regex - Reformat a string  by regular expressions</title><content type='html'>Sometimes we have strings with different formats but same meaning, then may be it's better to keep them all with an standard format in our report to keep consistency and make it easier for users.&lt;br /&gt;&lt;br /&gt;One example is format of a phone number, the standard format can be considered as "(###) ###-####" and here we have a solution by regular expression even though that many different regular expressions would work.&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;Match m = Regex.Match(str, &lt;br /&gt;   @"^\(?(\d{3})\)?[\s\-]?(\d{3})\-?(\d{4})$" );&lt;br /&gt;string newStr = String.Format("({0}) {1}-{2}",&lt;br /&gt;   m.Groups[1], m.Groups[2], m.Groups[3] );&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;In above regular expression pattern, each \d{n} part is surrounded by parenthesis which makes that part as a separate group (then each of items exists in Match.Groups array) that can be easily used using String.Format, another reformatting method is Regex.Replace, it's a static method and in the following example it replace dates in mm/dd/yy format to dd-mm-yy format:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;string newStr = Regex.Replace(str,&lt;br /&gt;   @"\b(?&lt;month&gt;\d{1,2})/(?&lt;day&gt;\d{1,2})/(?&lt;year&gt;\d{2,4})\b",&lt;br /&gt;   "${day}-${month}-${year}" );&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;In above pattern, ${day} inserts the substring captured by the group (?&lt;day&gt;\d{1,2}) and so on. &lt;br /&gt;&lt;br /&gt;Note: \b in above pattern specifies that the match must occur on a boundry between \w (alphanumeric) and \W (nonalphanumeric) characters. It means a word boundary, which are the first and last characters in words separated by any nonalphanumeric characters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-5053521841340000108?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/5053521841340000108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=5053521841340000108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5053521841340000108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/5053521841340000108'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/regex-reformat-string-by-regular.html' title='Regex - Reformat a string  by regular expressions'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-117676646619167036</id><published>2009-04-19T15:34:00.000-07:00</published><updated>2009-04-19T15:48:47.966-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Regex'/><title type='text'>Regex - String input validation by regular expressions</title><content type='html'>Using regular expression is one of the most efficient ways to bring security to validate user input. As an example, the following regular expression works to match valid names:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;[a-zA-Z'-‘Ãâå\s]{1,40}&lt;br /&gt;...&lt;br /&gt;using System.Text.RegularExpressions;&lt;br /&gt;...&lt;br /&gt;Regex.IsMatch(s, @"^[a-zA-Z'-‘Ãâå\s]{1,40}$" )&lt;br /&gt;...&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Generally most input validation should be pessimistic and allow only input that consists entirely of approved characters. In this way, may user encounter with some restrictions but it helps to protect against malicious input such as SQL injection attacks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-117676646619167036?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/117676646619167036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=117676646619167036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/117676646619167036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/117676646619167036'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/regex-string-input-validation-by.html' title='Regex - String input validation by regular expressions'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-275992190449779970</id><published>2009-04-19T02:46:00.000-07:00</published><updated>2009-04-19T02:57:46.592-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='DataGridView'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - How to bind a TextBox to a DataGridView column</title><content type='html'>The goal is "bind a TextBox to a column in a DataGridView control" to be able to edit the cell in that columns for each rows and also show the value of the cell in that column when user move through the grid rows.&lt;br /&gt;&lt;br /&gt;In the following code, imagine that we have a DataGridView called dgvTst and a TextBox control that called txtTst. To bind, CellClick event of DataGridView is coded as following:&lt;br /&gt;&lt;div class="mycode"&gt;&lt;br /&gt;private void dgvTst_CellClick(object sender, DataGridViewCellEventArgs e)&lt;br /&gt;{&lt;br /&gt;    if (txtTst.DataBindings.Count &gt; 0)&lt;br /&gt;        txtTst.DataBindings.RemoveAt(0);&lt;br /&gt;&lt;br /&gt;    // The code binds column index 2 to the TextBox control&lt;br /&gt;    txtTst.DataBindings.Add(&lt;br /&gt;        new Binding("Text", dgvTst[2, e.RowIndex], "Value", false) );&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/2648132302968261880-275992190449779970?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/275992190449779970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=275992190449779970' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/275992190449779970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/275992190449779970'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-how-to-bind-textbox-to-datagridview.html' title='C# - How to bind a TextBox to a DataGridView column'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-2790714133174858063</id><published>2009-04-15T10:39:00.000-07:00</published><updated>2009-04-15T10:44:06.777-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Visual Studio - Is it possible to install both VS 2005 and VS 2008 on same machine?</title><content type='html'>Yes, it's possible to have both on same machine.&lt;br /&gt;&lt;br /&gt;If you have multiple version of Visual Studio on your system, to open a solution, right click the file and select &lt;span style="font-weight:bold;"&gt;"Open With"&lt;/span&gt; from the context menu, then you see &lt;span style="font-weight:bold;"&gt;"Microsoft Visual Studio Version Selector"&lt;/span&gt;, if you use it, the solution automatically opens with the correct version (2005 or 2008) and it's depend on the VS version which you created your solution.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-2790714133174858063?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/2790714133174858063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=2790714133174858063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2790714133174858063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/2790714133174858063'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/visual-studio-is-it-possible-to-install.html' title='Visual Studio - Is it possible to install both VS 2005 and VS 2008 on same machine?'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2648132302968261880.post-3730789185827106830</id><published>2009-04-13T22:59:00.000-07:00</published><updated>2009-04-13T23:03:11.810-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#.NET'/><title type='text'>C# - A common question - Value-type vs Reference-type - Struct vs Class</title><content type='html'>Value types:&lt;br /&gt;Simplest types in the .NET, they contain their data directly instead of containing a reference to the memory that stored the data. Instances of value types are stored in an area of memory called the "stack", it brings performance and minimal overhead to create, change, read, or remove them.&lt;br /&gt;&lt;br /&gt;Three general value types:&lt;br /&gt;- Built in types&lt;br /&gt;(sbyte, byte, short, int, uint, long, float, double, decimal)&lt;br /&gt;(char, bool, date)&lt;br /&gt;- User-defined types&lt;br /&gt;(structures - by "struct")&lt;br /&gt;- Enumerations&lt;br /&gt;(enum - symbols that have fixed values)&lt;br /&gt;&lt;br /&gt;Structures:&lt;br /&gt;You can define them by "struct" and simply they are stored on the stack and they contain their data directly. Structures are composite of other types. Structure can store multiple values and it can have methods, those methods usually works on values which are stored in the structure.&lt;br /&gt;&lt;br /&gt;You should define a structure rather than a class, if the user defined type will perform better as a value type than a reference type. Generally structures meet all the following criteria:&lt;br /&gt;&lt;br /&gt;* Represents a single value logically&lt;br /&gt;* Has an instance size that is less than 16 bytes. (Interesting)&lt;br /&gt;* Is not frequently changed after creation.&lt;br /&gt;* Is not cast (Converting between types) to a reference type.&lt;br /&gt;&lt;br /&gt;If you assign an structure to another one, it will copy data and changing value in each one, doesn't affect the values in another one cuz data of structures are stored in different places in "stack".&lt;br /&gt;&lt;br /&gt;Question:&lt;br /&gt;You pass a value type variable into a method as an arguments, the method changes the variable, when the method returns, the variable has not changed, why?&lt;br /&gt;A: Passing a value type into a method, creates a copy of the data.&lt;br /&gt;&lt;br /&gt;----------------------------------&lt;br /&gt;Reference types:&lt;br /&gt;Most types in .NET are reference types (a few thousand!). Reference types store the address of their data (like pointers). The actual data that the address refers is stored in an area of memory called the "heap". Garbage collection manages the memory used by the heap by disposing of items that are no longer referenced. Assigning a reference type to another doesn't copy the data because a reference type just directly store the address of data.&lt;br /&gt;&lt;br /&gt;Class is a reference type.&lt;br /&gt;&lt;a href="http://www.jaggersoft.com/pubs/StructsVsClasses.htm#always%20has%20a%20default%20constructor"&gt;C# struct/class Differences&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2648132302968261880-3730789185827106830?l=iborn2code.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://iborn2code.blogspot.com/feeds/3730789185827106830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2648132302968261880&amp;postID=3730789185827106830' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3730789185827106830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2648132302968261880/posts/default/3730789185827106830'/><link rel='alternate' type='text/html' href='http://iborn2code.blogspot.com/2009/04/c-common-question-value-type-vs.html' title='C# - A common question - Value-type vs Reference-type - Struct vs Class'/><author><name>iBorn2Code</name><uri>http://www.blogger.com/profile/07588954557050928820</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='17' height='32' src='http://2.bp.blogspot.com/_e4Tel4Sa2XA/SZp5h2o28fI/AAAAAAAAAE8/tvuUSRg_TWM/S220/FBayanati.jpg'/></author><thr:total>0</thr:total></entry></feed>
