我知道仅仅检查类型是否不是值类型是不够的。我如何解释那些可以为空的?
复制
您可以使用 Nullable.GetUnderlyingType,如果类型不可为空,它将返回 null。
您是否尝试过关键字default(YourType)?
T 是引用类型还是值类型。
如果 T 是值类型,无论是数值还是结构。
这也有效:
bool nullable = yourType.IsGenericType && yourType.GetGenericTypeDefinition().Equals(typeof(Nullable<>))