Nullable ConvertTo Extension Method
Hello,
I have the need to easily convert a string to another type i.e. int. And would like to return null if the string is empty. I created a quick extension method, thought id post it up incase anyone finds it helpful.
/// <summary>
/// Converts a
string value to the given type, if the string is empty,
/// will return null.
///
</summary>
/// <typeparam
name="T"></typeparam>
/// <param
name="input"></param>
///
<returns></returns>
public static
T? ConvertTo<T>(this string input) where T : struct
{
T? ret = null;
if
(!string.IsNullOrEmpty(input)) {
ret =
(T)Convert.ChangeType(input, typeof(T));
}
return ret;
}
Basically to use this, just call the extension method on a string:
"12".ConvertTo<int>(); // Returns 12
"".ConvertTo<int>();
// Returns null
"1ddsfs".ConvertTo<int>(); //
Exception thrown (behaviour I wanted)
Just
a quick one today, will be posting some more useful things
in the weeks to come.
Cheers
Stefan