我试图找到一种方法来检查并查看给定对象的值是否等于其默认值.我环顾四周,想出了这个:
public static bool IsNullOrDefault<T>(T argument)
{
if (argument is ValueType || argument != null)
{
return object.Equals(argument, default(T));
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是我想这样称呼它:
object o = 0;
bool b = Utility.Utility.IsNullOrDefault(o);
Run Code Online (Sandbox Code Playgroud)
是o是一个对象,但我想让它弄清楚基类型并检查它的默认值.在这种情况下,基类型是一个整数,我想在这种情况下知道该值是否等于default(int),而不是default(object).
我开始认为这可能是不可能的.