tags:

views:

126

answers:

2

ReSharper has a "Check parameter for null" context action, that will automatically insert code to check an argument for null and throw ArgumentNullException if it is null.

If the parameter is a string, I would like another option: "Check string for Null or empty". This should generate code something similar to this:

if (String.IsNullOrEmpty(result))
    throw new ArgumentException("Parameter cannot be null or empty", "result");

Is there any way to add this to ReSharper easily ?

+2  A: 

This article should give you a good start.

Carra
+2  A: 

I've created resharper live templates for check for null and check for empty string.

So pnn + Enter inserts a parameter not null check etc.

The code for pnn looks like this

if($ARG$ == null)
   throw new $ARGNULLEXC$("$ARG$");$END$

Where $ARG$ is "Suggest parameter of type System.Object" and $ARGNULLEXC$ is "insert reference to System.ArgumentNullException". The $END$ indicates where your cursor should be after inserting the live template.

For the string variant, you would assign $ARG$ something like "Suggest parameter of type System.String".

SealedSun