C#动态转换可空类型值

1、在使用 Convert.ChangeType(value,type)对值value进行动态转换时,如type是可空类型,会导致抛出如下异常:

changetype 从“System.Int32”到“System.Nullable`1[[System.Int32, mscorlib,

2、按如下方式处理,可解决上述问题:

if (type.Name.Contains("Nullable"))
{
     NullableConverter convert = new NullableConverter(type);
     newValue = convert.ConvertFromString(value.ToString());
}

 

posted @ 2020-08-14 13:09  千年海岩  阅读(774)  评论(0编辑  收藏  举报