<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://devpinoy.org/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Rodel E. Dagumampan : resharper</title><link>http://devpinoy.org/blogs/suddenserenity/archive/tags/resharper/default.aspx</link><description>Tags: resharper</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>Finish the feature on time, you'll get your Resharper license</title><link>http://devpinoy.org/blogs/suddenserenity/archive/2007/08/14/finish-the-feature-on-time-you-ll-get-your-resharper-license.aspx</link><pubDate>Mon, 13 Aug 2007 14:27:00 GMT</pubDate><guid isPermaLink="false">99090821-4da1-4a75-98c2-a35884625ff7:12805</guid><dc:creator>rdagumampan</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://devpinoy.org/blogs/suddenserenity/rsscomments.aspx?PostID=12805</wfw:commentRss><comments>http://devpinoy.org/blogs/suddenserenity/archive/2007/08/14/finish-the-feature-on-time-you-ll-get-your-resharper-license.aspx#comments</comments><description>&lt;p&gt;When I was asked by my partner why we need to install &lt;a href="http://www.jetbrains.com/resharper/"&gt;resharper&lt;/a&gt;, I just can&amp;#39;t explain 
it all. I just said &amp;quot;there are&amp;nbsp;more than 1000 &lt;a href="http://www.jetbrains.com/resharper/features/index.html"&gt;reasons&lt;/a&gt;&amp;quot;&amp;nbsp;for 
us to have it, then he asked how much is the license and decided we&amp;#39;ll get it. 
If he asked again for specifics, I will give him a bad code and&amp;nbsp;we will just 
compete to make it good LOL.&lt;/p&gt;&lt;p&gt;Listed are some of the shortcuts that is hard to live without. It&amp;#39;s hard when you are peering with your teammates and you are the only one using it, &lt;i&gt;Goto Definition lng, hirap pa gawin. Ctrl + F (Find) to the resque.&lt;/i&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Ctrl + E&lt;/li&gt;&lt;li&gt;Ctrl + N&lt;/li&gt;&lt;li&gt;Ctrl + Shift + N&lt;/li&gt;&lt;li&gt;Alt + F7&lt;/li&gt;&lt;li&gt;Ctrl + F7&lt;/li&gt;&lt;li&gt;F12&lt;/li&gt;&lt;li&gt;Alt + Enter &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Alt&lt;/li&gt;&lt;li&gt;F12, Shft + F12&lt;/li&gt;&lt;li&gt;Alt + Arrow Up, Alt + Arrow Down&lt;/li&gt;&lt;li&gt;Ctrl + Alt + M, Ctrl + Alt + V, Ctrl + Alt + D, Ctrl + Alt + P&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Ctrl + Shift + Backspace&lt;/li&gt;&lt;li&gt;Ctrl + Alt + F&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Live templates&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;But not so fast, I&amp;#39;ll give&amp;nbsp;my team&amp;nbsp;a challenge. Each member will be given a 
feature to implement. In an agreed estimate, when the feature was finished, he 
will get the resharper license. If he missed it, it will still be given but just 
after two features implemented. Challenge will start on internal version 2 of our projects. Sound&amp;#39;s cool?, refer your friends in davao 
we&amp;#39;re still hiring :).&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://devpinoy.org/aggbug.aspx?PostID=12805" width="1" height="1"&gt;</description><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/developer+tools/default.aspx">developer tools</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/resharper/default.aspx">resharper</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/microISV/default.aspx">microISV</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/build+better+software/default.aspx">build better software</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/development/default.aspx">development</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/productivity+tools/default.aspx">productivity tools</category></item><item><title>ASP.NET: Utility.TryParse() To Better Handle Parameters</title><link>http://devpinoy.org/blogs/suddenserenity/archive/2007/01/23/asp-net-utility-tryparsexxx-to-handle-nullreference-exceptions.aspx</link><pubDate>Mon, 22 Jan 2007 20:02:00 GMT</pubDate><guid isPermaLink="false">99090821-4da1-4a75-98c2-a35884625ff7:7728</guid><dc:creator>rdagumampan</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://devpinoy.org/blogs/suddenserenity/rsscomments.aspx?PostID=7728</wfw:commentRss><comments>http://devpinoy.org/blogs/suddenserenity/archive/2007/01/23/asp-net-utility-tryparsexxx-to-handle-nullreference-exceptions.aspx#comments</comments><description>In ASP.NET, one of the tedious things to do is to get values from query string parameters, cast/convert to proper types and assign to local variable for further processing. Initally most developers simply code like this:&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;int&lt;/span&gt; orderId = Request.QueryString[&lt;span style="color:maroon;"&gt;"order_id"&lt;/span&gt;];&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:teal;"&gt;OrderBLL&lt;/span&gt; orderManager = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;OrderBLL&lt;/span&gt;();&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:teal;"&gt;OrderEN&lt;/span&gt; order = orderManager.Find(&lt;span style="color:teal;"&gt;Convert&lt;/span&gt;.ToInt32(orderId));&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;The problem with this code is no way to catch empty paramaters and likely to throw NullReferenceException if not properly handled, you dont want your customer to see the Yellow Page Of Death (YPD) would you :). Using TryParse method can fixed this but&amp;nbsp; your code will be bloated when you have multiple paramaters and lots of variable initialization for out&amp;nbsp; parameter. Also there's no way you can handle default value when parameter is empty except by encloding convertion in try-catch-finally clause. &lt;br&gt;&lt;br&gt;To make this easier, I encapsulated the whole operation in one utility class.&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&lt;/span&gt;&amp;nbsp;&lt;span style="color:blue;"&gt;namespace&lt;/span&gt; Translate.Helpers.Web {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;9&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;Utility&lt;/span&gt; {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;static&lt;/span&gt; Utility() {}&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;11&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;12&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;int&lt;/span&gt; TryParseInt32(&lt;span style="color:blue;"&gt;string&lt;/span&gt; inputValue) {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;13&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; TryParseInt32(inputValue, &lt;span style="color:maroon;"&gt;"0"&lt;/span&gt;);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;14&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;15&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;16&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;int&lt;/span&gt; TryParseInt32(&lt;span style="color:blue;"&gt;string&lt;/span&gt; inputValue, &lt;span style="color:blue;"&gt;string&lt;/span&gt; valueWhenNull) {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;17&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; inputValue = inputValue ?? valueWhenNull;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;18&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;19&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;int&lt;/span&gt; returnedValue = 0;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;20&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:teal;"&gt;Int32&lt;/span&gt;.TryParse(inputValue, &lt;span style="color:blue;"&gt;out&lt;/span&gt; returnedValue);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;21&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;22&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; returnedValue;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;23&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;24&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;25&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;int&lt;/span&gt; TryParseDecimal(&lt;span style="color:blue;"&gt;string&lt;/span&gt; inputValue) {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;26&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; TryParseInt32(inputValue, &lt;span style="color:maroon;"&gt;"0.00"&lt;/span&gt;);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;27&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;28&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;29&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;static&lt;/span&gt; &lt;span style="color:blue;"&gt;decimal&lt;/span&gt; TryParseDecimal(&lt;span style="color:blue;"&gt;string&lt;/span&gt; inputValue, &lt;span style="color:blue;"&gt;string&lt;/span&gt; valueWhenNull) {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;30&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; inputValue = inputValue ?? valueWhenNull;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;31&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;32&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;decimal&lt;/span&gt; returnedValue = 0;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;33&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;decimal&lt;/span&gt;.TryParse(inputValue, &lt;span style="color:blue;"&gt;out&lt;/span&gt; returnedValue);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;34&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;35&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; returnedValue;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;36&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;37&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;38&lt;/span&gt;&amp;nbsp;&lt;span style="color:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #region&lt;/span&gt; localization bits&lt;/p&gt;&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 64&lt;/span&gt;&amp;nbsp;&lt;span style="color:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; #endregion&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;65&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;66&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;67&lt;/span&gt;&amp;nbsp;}&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;Using this utility class you can simply assign parameter value into a varaible with null reference and empty values handling.&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;int&lt;/span&gt; orderId = &lt;span style="color:teal;"&gt;Utility&lt;/span&gt;.TryParseInt32(Request.QueryString[&lt;span style="color:maroon;"&gt;"order_id"&lt;/span&gt;]);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;decimal&lt;/span&gt; amount = &lt;span style="color:teal;"&gt;Utility&lt;/span&gt;.TryParseDecimal(Request.QueryString[&lt;span style="color:maroon;"&gt;"amount"&lt;/span&gt;]);&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;Btw, there's more! Combining the power of ReSharper templates I can simply type "tryint" and this code will be generated, then tab tab tab. Here's some of the the templates.&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; [abbreviation= tryint]&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;int&lt;/span&gt; $VARIABLE1$ = &lt;span style="color:teal;"&gt;Utility&lt;/span&gt;.TryParseInt32(Request.QueryString[&lt;span style="color:maroon;"&gt;"$VARIABLE2$"&lt;/span&gt;], &lt;span style="color:maroon;"&gt;"$VARIABLE3$"&lt;/span&gt;);&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; [abbreviation= trydec]&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;decimal&lt;/span&gt; $VARIABLE1$ = &lt;span style="color:teal;"&gt;Utility&lt;/span&gt;.TryParseDecimal(Request.QueryString[&lt;span style="color:maroon;"&gt;"$VARIABLE2$"&lt;/span&gt;], &lt;span style="color:maroon;"&gt;"$VARIABLE3$"&lt;/span&gt;);&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;&lt;br&gt;HTH. Happy Coding!&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://devpinoy.org/aggbug.aspx?PostID=7728" width="1" height="1"&gt;</description><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/.NET/default.aspx">.NET</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/how+to/default.aspx">how to</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/resharper/default.aspx">resharper</category></item><item><title>.NET: Coderush addict sharpen by Resharper 2.5</title><link>http://devpinoy.org/blogs/suddenserenity/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx</link><pubDate>Thu, 14 Dec 2006 22:00:00 GMT</pubDate><guid isPermaLink="false">99090821-4da1-4a75-98c2-a35884625ff7:7182</guid><dc:creator>rdagumampan</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://devpinoy.org/blogs/suddenserenity/rsscomments.aspx?PostID=7182</wfw:commentRss><comments>http://devpinoy.org/blogs/suddenserenity/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx#comments</comments><description>I have been using coderush before in VS2003 but when I shifted to VS2005 I started to love its intelliesense, syntax support and refactoring. I must admit when I won the resharper license, Im hesitant to use it. Shame on me cozIm afraid it might mess up my IDE, slows its performance and override my shortcuts. Not until VS2005 runs short on complex refactoring, also VS is sooo slow on refactoring on multiple projects with hundreds of sources.&lt;br&gt;&lt;br&gt;The lazy coder in me insist I should start creating templates, this where R# is highly commendable. Now I have keys &lt;font color="#a52a2a" face="Courier New"&gt;propint &lt;/font&gt;for integer property, &lt;font color="#a52a2a" face="Courier New"&gt;propstr,&lt;/font&gt; &lt;font color="#a52a2a" face="Courier New"&gt;propdec, &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;font face="Courier New"&gt;metint, metstr, metarr, metenum, metlist&lt;/font&gt;&lt;/font&gt;... This soo cool! Heres the issue, I tried creating this as &lt;font color="#a52a2a"&gt;&lt;font face="Courier New"&gt;metlist&lt;/font&gt;&lt;/font&gt;:&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:teal;"&gt;List&lt;/span&gt;&amp;lt;$TYPE$&amp;gt; $VARIABLE1${&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:teal;"&gt;List&lt;/span&gt;&amp;lt;$TYPE$&amp;gt; $VARIABLE2$ = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;List&lt;/span&gt;&amp;lt;$TYPE$&amp;gt;();&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; $VARIABLE2$;&amp;nbsp; &lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;&lt;br&gt;And it turns like this:&lt;br&gt;&lt;br&gt;

&lt;div style="background:white none repeat scroll 0% 50%;font-family:Verdana;font-size:8pt;color:black;-moz-background-clip:-moz-initial;-moz-background-origin:-moz-initial;-moz-background-inline-policy:-moz-initial;"&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:teal;"&gt;List&lt;/span&gt;&amp;lt;TYPE&amp;gt; VARIABLE1 {&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;nbsp; &amp;lt;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE&amp;nbsp; &amp;gt;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; =&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;new&lt;/span&gt; List&amp;nbsp; &amp;lt;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; TYPE&amp;nbsp; &amp;gt;();&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;7&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;return&lt;/span&gt; &lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;8&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/p&gt;
&lt;p style="margin:0px;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;9&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;/div&gt;

&lt;br&gt;VS2005 intellisense is lot faster than R#, you will notice the difference and many times I encountered intellisene not working inside anonymous delegates. A friend told me he turned off the R# intellisense and uses VS2005's.&lt;br&gt;&lt;br&gt;&lt;b&gt;What I like most with the resharper:&lt;br&gt;&lt;/b&gt;Alt + Ins - this really saves me time coding those constructors&lt;br&gt;Alt + Arrow Up, Alt + Arrow Down - moves to next method, previoues method&lt;br&gt;Ctrk + W, Ctrl + W + W - select word, select double word/line, select whole method, select whole class&lt;br&gt;Live Templates - though this is already present in VS2005 code snippets, in R# you dont have to press Ctrl + K + X, just type in.&lt;br&gt;Find usages - best way to check before removing garbage.&lt;br&gt;Alt + Enter, one my biggest frustrations with VS2005 is the way it insert the last using statement that end up always moving the statement higher. R# is so smart to not mess my namespaces with .NET namespaces. "using System.Collections.Generic" is smartly placed after "using System.Collections".&lt;br&gt;Green flag, i like the green icon on editor.&lt;br&gt;Ctrl + N, very power coder friendly, i dont have to browse the solutions files.&lt;br&gt;F2, very very smart and it can rename ASP.NET control ids very fast.&lt;br&gt;&lt;br&gt;After reading from codebetter.com that R# 2.5 is available, i immediately download it. It says it has significant performance on the editor and intellisense.&lt;br&gt;&lt;br&gt;&lt;b&gt;UPDATED:&lt;/b&gt;&lt;br&gt;Download Resharper 2.5 Now, the performance difference is obvious.&lt;br&gt;&lt;p&gt;&lt;strong&gt;Share this post:&lt;/strong&gt; &lt;font color="#008000"&gt;&lt;a title="Email New and Notable 135" href="mailto:?body=http://community.devpinoy.org/blogs/dehranph/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx"&gt;Email it!&lt;/a&gt; | &lt;a href="http://del.icio.us/post?url=http://community.devpinoy.org/blogs/dehranph/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx" title="Submit New and Notable 135 to del.icio.us"&gt;bookmark it!&lt;/a&gt; | &lt;a href="http://www.digg.com/submit?url=http://community.devpinoy.org/blogs/dehranph/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx" title="Submit New and Notable 135 to digg.com"&gt;digg it!&lt;/a&gt; | &lt;a href="http://reddit.com/submit?url=http://community.devpinoy.org/blogs/dehranph/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx" title="Submit New and Notable 135 to reddit.com"&gt;reddit!&lt;/a&gt;| &lt;a href="http://www.dotnetkicks.com/kick/?url=http://community.devpinoy.org/blogs/dehranph/archive/2006/12/15/net-coderush-addict-sharpen-by-resharper-2-0.aspx" title="Submit New and Notable 135 to DotNetKicks.Com"&gt;kick it!&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://devpinoy.org/aggbug.aspx?PostID=7182" width="1" height="1"&gt;</description><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/.NET/default.aspx">.NET</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/tektips/default.aspx">tektips</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/developer+tools/default.aspx">developer tools</category><category domain="http://devpinoy.org/blogs/suddenserenity/archive/tags/resharper/default.aspx">resharper</category></item></channel></rss>