2013-02-12 1 views

답변

2

글쎄, 당신은이 작업을 수행 할 수있는 대부분의 값 형식에 대한 기본 값은 "자연 제로"는 사실을 사용

public static bool IsNotNullAndGreaterThanDefault<T>(this T? value) 
    where T : struct, IComparable<T> 
{ 
    return value != null && value.Value.CompareTo(default(T)) > 0; 
} 

합니다.

+0

굉장! 고마워요 존! – jigsmshah

0

당신은이 작업을 수행 할 IConvertible을 사용할 수 있습니다 :이 작업을 할 수 있도록 것 같은/긴/더블 모든 IConvertible을 구현 int로서

public static bool IsNotNullAndGreaterThanZero<T>(this T? value) 
    where T : struct, IConvertible 
{ 
    return value != null && value.ToDecimal() > 0M; 
} 

기본 값 유형.

관련 문제