我想了解Nullable.GetUnderlyingType()的用法。什么时候应该使用?
此外,在以下示例中,我们如何使用GetUnderlyingType而不是GetType
int? x = 1;
Console.WriteLine(x.GetType().Name);
我试图关注Whats the use of Nullable.GetUnderlyingType, if typeof(int?) is an Int32?链接,但我一直在抓挠。
答案 0 :(得分:0)
假设您通过反射获得了类的属性(称之为vProp),则以下内容应该有效:
Type tNullType = Nullable.GetUnderlyingType(vProp.PropertyType);
Type tType = tNullType ?? vProp.PropertyType;
tType将返回您可以用于转换或其他类似操作的实际属性类型,无论是否为Nullable。