Joe*_*ess 5 .net types nullable
我有一个具有type属性的对象.当类型设置为Int64,我尝试稍后提取类型信息时,我得到System.Nullable.
这是Info的类型
{Name = "Nullable`1" FullName = "System.Nullable`1[[System.Int64, mscorlib, Version=2.0.0.0]]"}
Run Code Online (Sandbox Code Playgroud)
我如何进入System.Int64类型?
听起来你有一个给定的类型,你想要它或者它的底层类型Nullable<T>.最好的方法是这样的:
Nullable.GetUnderlyingType(yourObject.Type) ?? yourObject.Type;
Run Code Online (Sandbox Code Playgroud)
由于Nullabe.GetUnderlyingType返回null如果给定的Type是不是Nullable<T>你可以使用空合并运算符(?)的值默认为原始类型.