C# Extension method, GetValueOrNull for value type object
By admin - Last updated: Wednesday, March 12, 2008 - Save & Share - Leave a Comment
Return null if the value type object has default value.
public static T? GetValueOrNull<t>( this T value ) where T : struct
{
if( value.Equals( default( T ) ) )
return new Nullable<t>();
else
return value;
}
{
if( value.Equals( default( T ) ) )
return new Nullable<t>();
else
return value;
}
// Usage
int i = default(int); //0
int? i = i.GetValueOrNull();
Console.Writeline( i.HasValue );
// output: false