<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Rays of Thoughts</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/default.aspx</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 1.0 (Build: 1.0.1.50214)</generator><item><title>Wow... WPF</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2006/03/29/136421.aspx</link><pubDate>Wed, 29 Mar 2006 04:11:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:136421</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/136421.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=136421</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;&lt;FONT&gt;Its a great experience to work on WinFX technologies. &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT&gt;&lt;FONT&gt;When I started to lap around WPF, I found it pretty interesting to develop UIs with less code and jazzy effects. Before that we had to write lot of GDI+ even for a simple animation. WPF has made the life of developers easy.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=136421" width="1" height="1"&gt;</description></item><item><title>Avalon Community Technology Preview Released</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/11/24/33394.aspx</link><pubDate>Wed, 24 Nov 2004 19:35:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:33394</guid><dc:creator>mahalax</dc:creator><slash:comments>1</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/33394.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=33394</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;Microsoft released a Community Technology Preview of "Avalon," the new presentation subsystem for Windows.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT&gt;The following are the highlights of this new release though there are a couple of caveates to this release:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT&gt;&lt;FONT&gt;Support for today's operating systems. &lt;/FONT&gt;&lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;&lt;FONT&gt;Layout and control features. &lt;/FONT&gt;&lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;&lt;FONT&gt;3D drawing enhancements. &lt;/FONT&gt;&lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;&lt;FONT&gt;Continued refinement. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT&gt;To read more on this release visit &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/Longhorn/understanding/pillars/avalon/avnov04ctp/default.aspx"&gt;&lt;FONT&gt;Avalon November 2004 Community Technical Preview&lt;/FONT&gt;&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=33394" width="1" height="1"&gt;</description></item><item><title>Google launches Google Scholar</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/11/19/32655.aspx</link><pubDate>Fri, 19 Nov 2004 13:59:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:32655</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/32655.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=32655</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;Google has launched a new search service aimed at scientists and academic researchers. Google Scholar is a free beta service that allows users to search for scholarly literature like peer-reviewed papers, theses, books, preprints, abstracts and technical reports. The new service accesses information from resources such as academic publishers, universities, professional societies and preprint repositories. because the service automatically analyzes and extracts citations and presents them as separate results, users can find references to older works that may only exist offline in books or other publications. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT&gt;Read the news article &lt;/FONT&gt;&lt;A href="http://www.thestandard.com/internetnews/000628.php"&gt;&lt;FONT&gt;here...&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT&gt;Access Google Scholar Search Service &lt;/FONT&gt;&lt;A href="http://scholar.google.com./"&gt;&lt;FONT&gt;here...&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=32655" width="1" height="1"&gt;</description></item><item><title>Inside the Guts of CLR!!!</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/11/08/31319.aspx</link><pubDate>Mon, 08 Nov 2004 20:14:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:31319</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/31319.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=31319</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;"Inside the Guts of CLR" - this was the topic of the MSDN session held on November 3rd Chennai, India. &lt;/FONT&gt;&lt;A href="http://www.dotnetindia.com/"&gt;&lt;FONT&gt;M Anand, MVP&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; presented this Level 400 session and these days he is becoming the regular presenter for the MSDN sessions in Chennai. the session was quite informative and interesting. The crux of the presentation was CLR hosting and GC. A short listing of the things discussed:&lt;BR&gt;&lt;/FONT&gt;
&lt;DIV&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;FONT&gt;CLR Hosting - CLR hosting basics and advanced concepts like manually hosting CLR through COM. Actually it was interesting to learn that the infrastructure of the CLR is completely COM based. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Garbage Collection - Basics of Memory handling, .NET GC algorithm, Object Finalization, Strong and Weak references etc. A demo on GC process using a simple string concatenating application was really informative. Infact I/we were amazed to see the GC differences when building strings with usual string concatenation and StringBuilder. This demo also helped to understand the best practice for string building. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;CLR enhancements in Whidbey - EnC and Generics.&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;FONT&gt;&lt;STRONG&gt;Update:&lt;/STRONG&gt; One of the attendees has posted the complete content of the seesion in the comments section&amp;nbsp;&lt;A href="http://www.dotnetindia.com/2004/11/msdn_today.html"&gt;here&lt;/A&gt;.&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=31319" width="1" height="1"&gt;</description></item><item><title>Interesting Power Wattage Calculator!!!</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/11/02/30700.aspx</link><pubDate>Tue, 02 Nov 2004 18:15:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:30700</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/30700.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=30700</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;With the new components of today, everyone wanting to upgrade to the latest and greatest, it goes unrealized that we might be overloading the power supply in our computer.&lt;BR&gt;&lt;BR&gt;With all the high end mainboards, super fast processors, extra hard drives for storage, and case mod items such as LED fans, cathode lights (not to mention all the USB devices hanging off today's PC), people don't stop to think about all the wattage being used. However, the power supply is a very important and often overlooked component.&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.jscustompcs.com/power_supply/"&gt;&lt;FONT&gt;Check here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; to see if your power supply is large enough to take care of your power-hungry computer!&lt;/FONT&gt;&lt;BR&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=30700" width="1" height="1"&gt;</description></item><item><title>FxCop 1.312 Released</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/11/01/30584.aspx</link><pubDate>Mon, 01 Nov 2004 16:37:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:30584</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/30584.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=30584</wfw:commentRss><description>&lt;P&gt;&lt;FONT&gt;The FxCop team has released FxCop 1.312. Major features of this release: &lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT&gt;Simplification of report xml. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;New Fix Categories: Each message is marked to indicate if the suggested fix will constitute a breaking change for previously shipped code. &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;User Interface Improvements: windowing behavior has been made more consistent &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Auto Update: Sign up to get notified when a new version of FxCop is available. &lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT&gt;New rules in the areas of Design, Interoperability, Mobility, Naming, Performance, Portability, Security and Usage has been introduced. To read more on this release visit &lt;/FONT&gt;&lt;A href="http://www.gotdotnet.com/team/fxcop/Misc/gotdotnetstyle.aspx?url=1.312_readme.mht"&gt;&lt;FONT&gt;What's New in FxCop&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; and download the tool &lt;/FONT&gt;&lt;A href="http://www.gotdotnet.com/team/fxcop/"&gt;&lt;FONT&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT&gt;For people who ask what is FxCop, it is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses reflection, MSIL parsing, and callgraph analysis to inspect assemblies for more than 200 defects in the following areas: &lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT&gt;Library design &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Localization &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Naming conventions &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Performance &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Security &lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT&gt;FxCop includes both GUI and command line versions of the tool, as well as an SDK to create custom rules.&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=30584" width="1" height="1"&gt;</description></item><item><title>Smart Client Architecture and Design Guide Released</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/28/30131.aspx</link><pubDate>Thu, 28 Oct 2004 19:07:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:30131</guid><dc:creator>mahalax</dc:creator><slash:comments>1</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/30131.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=30131</wfw:commentRss><description>&lt;FONT&gt;
&lt;P&gt;MSDN has just released a new architecture and design guide for Smart Clients which provides information on several topics for those creating smart client applications. Issues addressed include data handling, connection state management, security, and threading.&lt;BR&gt;&lt;BR&gt;The definition of "smart client" is dependent on requirements and implementation details but all share the following characteristics:&lt;BR&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;DIV&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT&gt;Make Use of Local resources&lt;/FONT&gt; 
&lt;LI&gt;&lt;FONT&gt;Make use of network resources &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Support occasionally connected users &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Provide intelligent installation and update &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT&gt;Provide client device flexibility&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;FONT&gt;To understand more on Smart Clients &lt;/FONT&gt;&lt;A href="http://weblogs.asp.net/dphill/articles/66300.aspx"&gt;&lt;FONT&gt;this article&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; by &lt;/FONT&gt;&lt;A href="http://weblogs.asp.net/dphill/"&gt;&lt;FONT&gt;David Hill&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; would be helpful.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT&gt;Access the Design Guide &lt;/FONT&gt;&lt;A href="http://download.microsoft.com/download/9/a/1/9a1115fd-8ba8-4aa0-a82e-07044bd12ac0/SCAG.pdf"&gt;&lt;FONT&gt;here...&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=30131" width="1" height="1"&gt;</description></item><item><title>Free Components</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/27/29989.aspx</link><pubDate>Wed, 27 Oct 2004 21:39:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:29989</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/29989.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=29989</wfw:commentRss><description>&lt;DIV&gt;&lt;FONT&gt;People at &lt;A href="http://www.compona.com"&gt;Compona&lt;/A&gt; have given some really good free components.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=5"&gt;&lt;FONT&gt;SyntaxBox&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=69"&gt;&lt;FONT&gt;ExplorerBar&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; - FREE &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=70"&gt;&lt;FONT&gt;Layout Containers&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; - FREE &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=55"&gt;&lt;FONT&gt;Common Controls&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; - FREE &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=59"&gt;&lt;FONT&gt;Compona Editors&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; - FREE &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=48"&gt;&lt;FONT&gt;Compona Grid&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;A href="http://www.compona.com/WikiEngine/WikiPageViewer.ascx?ID=47"&gt;&lt;FONT&gt;Math Lib&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt; - FREE&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT&gt;Thanks to &lt;/FONT&gt;&lt;A href="http://blogs.avocadosoftware.com/dredge/"&gt;&lt;FONT&gt;dredge&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt;&amp;nbsp;for this piece of info.&lt;/FONT&gt;&lt;/DIV&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=29989" width="1" height="1"&gt;</description></item><item><title>Enums and Performance </title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/20/29163.aspx</link><pubDate>Wed, 20 Oct 2004 18:54:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:29163</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/29163.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=29163</wfw:commentRss><description>&lt;FONT face=Verdana size=2&gt;Enumerations provide a convenient way to work with sets of related constants and to associate constant values with names. It is a is a special form of value type, which inherits from System.Enum and supplies alternate names for the values of an underlying primitive type.&lt;BR&gt;&lt;BR&gt;While doing some study on this area I came across &lt;/FONT&gt;&lt;A href="http://wesnerm.blogs.com/net_undocumented/2004/09/enums_and_perfo.html#comments"&gt;&lt;FONT face=Verdana color=#776644 size=2&gt;this interesting post&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; that speaks about Enums and its performance implications by &lt;/FONT&gt;&lt;A href="http://wesnerm.blogs.com/net_undocumented"&gt;&lt;FONT face=Verdana color=#776644 size=2&gt;Wesner Moise&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;. Until I read the article I didn't have the least idea that an enum would have performance implications.&lt;/FONT&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=29163" width="1" height="1"&gt;</description></item><item><title>Templates and Generics</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/20/29168.aspx</link><pubDate>Wed, 20 Oct 2004 19:40:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:29168</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/29168.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=29168</wfw:commentRss><description>&lt;DIV&gt;&lt;FONT&gt;Generics is a feature that has been added to .NET2.0. I have been recently attending lectures on Generics where I heard people saying it is a .NET version of C++ Templates. But these articles contrast on this. From the explanation given I am now in sync with the fact that Templaets and Generics have a very minimal overlapping in their functionality else are different from each other. Read the articles at &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/csharpfaq/archive/2004/07/28/199940.aspx"&gt;&lt;FONT&gt;Are Generics in .NET&amp;nbsp;like Templates in C++?&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt;,&amp;nbsp;&lt;/FONT&gt;&lt;A href="http://www.developer.com/net/cplus/article.php/10919_3367531_1"&gt;&lt;FONT&gt;Comparing .NET Generics and C++ Templates&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt;&amp;nbsp;and &lt;/FONT&gt;&lt;A href="http://weblogs.asp.net/branbray/archive/2003/11/19/51023.aspx"&gt;&lt;FONT&gt;Templates &amp;amp;&amp;nbsp; Generics&lt;/FONT&gt;&lt;/A&gt;&lt;FONT&gt;.&lt;/FONT&gt;&lt;/DIV&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=29168" width="1" height="1"&gt;</description></item><item><title>Edit &amp; Continue for C#!!!</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/16/28770.aspx</link><pubDate>Sat, 16 Oct 2004 19:55:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:28770</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/28770.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=28770</wfw:commentRss><description>At last Microsoft has decided to extend the Edit &amp; Continue feature for C# also. Many C# developers including me have been looking for this option that is available in Whidbey for VB.NET and C++, but not for C#. Thanks to Micrososft for this decision.

For people who ask what is Edit &amp; Continue, it is a debugger feature that allows you to pause an application being debugged, make changes to the code, and then continue without a full project recompile.

Read more on this and other VS .NET 2005 features &lt;a href="http://blogs.msdn.com/somasegar/archive/2004/10/15/242853.aspx"&gt;here...&lt;/a&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=28770" width="1" height="1"&gt;</description></item><item><title>Method Overloading in WebServices</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/13/28425.aspx</link><pubDate>Wed, 13 Oct 2004 22:40:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:28425</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/28425.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=28425</wfw:commentRss><description>&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;Web services are also classes just like any other .NET classes. Nevertheless they have methods marked as WebMethods that can be exposed by the WebServices to be consumed by the outside world. Apart from these WebMethods they can also have normal methods like any other classes have.&lt;BR&gt;Since a web service is a class it can utilize all the OO features like method overloading. However to use this feature on WebMethods we need to do something more that is explained in this article.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;Creating WebMethods:&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;Let us create a simple WebService that has the following overloaded methods:&lt;BR&gt;public string GetGreeting()&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name, string p_Message)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;All these three methods return variants of a Greeting message to the WebClient. Let us now mark the methods as Web Methods. To acheive this apply the [WebMethod] attribute to the publis methods.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod]&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting()&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi Guest";&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&lt;BR&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/FONT&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod]&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi " + p_Name + "!";&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&lt;BR&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/FONT&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod]&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name, string p_Message)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi " + p_Name + "!" + p_Message;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;This would compile fine. Run the WebService in the browser. That should give an error saying that the GetGreeting() mthods use the same message name 'GetGreeting' and asking to use the MessageName property of the WebMethod.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;&lt;STRONG&gt;Adding the MessageName property:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;Add the MessageName property to the WebMethod attribute as shown below:&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod]public string GetGreeting()&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi Guest";&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod (MessageName="WithOneString")]&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi " + p_Name + "!";&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;[WebMethod (MessageName="WithTwoStrings")]&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;public string GetGreeting(string p_Name, string p_Message)&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;{&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hi " + p_Name + "!" + p_Message;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT face=Verdana size=2&gt;}&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR&gt;&lt;FONT face=Verdana size=2&gt;Now compile the WebService and run in the browser. You can see that the first method is displayed as GetGreeting wherein for the second and third method the alias we set using the MessageName property is displayed.&lt;/FONT&gt;&lt;/DIV&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=28425" width="1" height="1"&gt;</description></item><item><title>4 Essential C# Tips</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/01/27316.aspx</link><pubDate>Fri, 01 Oct 2004 13:35:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:27316</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/27316.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=27316</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;1. Program to Interfaces Whenever Possible&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The .NET Framework contains both classes and interfaces. When you write routines, you will find that you probably know which .NET class you're using. However, your code will be more robust and more reusable if you program using any supported interfaces instead of the class you happen to be working with at the time&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;2. Use Properties Instead of Raw Data&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;With the addition of properties as language elements, there is absolutely no reason to declare data elements with any access level greater than private. Because client code will view properties as data elements, you don't even lose the convenience of working with simple data elements in classes. In addition, using properties gives you more flexibility and more capabilities. Properties provide better encapsulation of your data elements. Properties let you make use of lazy evaluation to return data. Finally, properties can be virtual. They can even be abstract. You can also declare properties in interfaces. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;3. Use Delegates for Producer/Consumer Idiom&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;When you create a class that implements the producer idiom, use a delegate to notify consumers. This will be a more flexible way to implement this idiom than interfaces. Delegates are multicast, so you can support multiple consumers without creating extra code. Also, you lower the coupling between classes by using the delegate model rather than a full interface model&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT face=Verdana size=2&gt;4. Pay Attention to Initialization Order&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The C# language adds the concept of initializers on member variable declarations. These initializers get executed before the body of the constructor gets executed. In fact, variable initializers get executed before the base class's constructor gets executed&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Read the complete article &lt;/FONT&gt;&lt;A href="http://www.fawcette.com/vsm/2002_04/online/online_eprods/c_bwagner04_22_02/default.aspx"&gt;&lt;FONT face=Verdana size=2&gt;here...&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=27316" width="1" height="1"&gt;</description></item><item><title>Microsoft announces new MVPs!!!</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/10/01/27314.aspx</link><pubDate>Fri, 01 Oct 2004 13:22:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:27314</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/27314.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=27314</wfw:commentRss><description>&lt;DIV class=post-body&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Microsoft has announced new MVPs and here is the list from India.&lt;BR&gt;&lt;/FONT&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Hari K. Prasad, Trivandrum &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Dhamayanthi N, Chennai &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Sanjay Vyas, Mumbai &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;KS Naveen, Bangalore &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Sarang Datye, Pune &lt;/FONT&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Tarun Anand, Delhi&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Hearty Congratulations to them...&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Thanks to &lt;/FONT&gt;&lt;A href="http://vishaljoshi.blogspot.com/"&gt;&lt;FONT face=Verdana color=#776644 size=2&gt;Vishal&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; and &lt;/FONT&gt;&lt;A href="http://www.mvpblog.com/arun/"&gt;&lt;FONT face=Verdana color=#776644 size=2&gt;Arun&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; for the info.&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=27314" width="1" height="1"&gt;</description></item><item><title>Find Memory Leaks and Optimize Memory Usage in Programs Written in Any .NET Language</title><link>http://www.dotnetjunkies.com/WebLog/mahalax/archive/2004/09/30/27218.aspx</link><pubDate>Thu, 30 Sep 2004 15:31:00 GMT</pubDate><guid isPermaLink="false">58df7014-fd75-437c-9641-150997716d1c:27218</guid><dc:creator>mahalax</dc:creator><slash:comments>0</slash:comments><comments>http://www.dotnetjunkies.com/WebLog/mahalax/comments/27218.aspx</comments><wfw:commentRss>http://www.dotnetjunkies.com/WebLog/mahalax/commentrss.aspx?PostID=27218</wfw:commentRss><description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This post is an update to my post on &lt;/FONT&gt;&lt;A href="http://mahalax.blogspot.com/2004/09/circular-references-memory-leaks-other.html"&gt;&lt;FONT face=Verdana color=#3366aa size=2&gt;Circular References / Memory Leaks /other baddies&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;at &lt;/FONT&gt;&lt;A href="http://mahalax.blogspot.com"&gt;&lt;FONT face=Verdana size=2&gt;'A Novice On Writing'&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;.&lt;BR&gt;&lt;BR&gt;Having a garbage collected runtime removes one of the biggest sources of program errors, memory allocation errors. Unfortunately, memory leaks are still a reality. A memory leak can occur if an instance is unintentionally being referenced from some other long-living instance, or from a static field. In this case the instance cannot be garbage collected. A very common unintentional reference is an event handler that is never removed.&lt;BR&gt;&lt;BR&gt;Here is a &lt;/FONT&gt;&lt;A href="http://www.scitech.se/memprofiler/"&gt;&lt;FONT face=Verdana color=#776644 size=2&gt;.NET Memory Profiler&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; as claimed by the vendors, that helps locate instances that are being referenced unintentionally, and it will tell why the instance has not been garbage collected.&lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://www.dotnetjunkies.com/WebLog/aggbug.aspx?PostID=27218" width="1" height="1"&gt;</description></item></channel></rss>