好吧,对于使用可空类型,我还是个新手。
我正在为我的一个项目编写一个反射对象遍历程序,我正在使用从反射属性中检索到的值来设置反射属性的值。
我检索到的值仍然是object形式的,我开始意识到这一点,因为我希望我的对象遍历器在找不到东西时返回null (我曾考虑抛出一个异常,但我希望在出现问题时软失败)。
无论如何,我设置/获取的一些值是decimal bool等。所以我突然意识到我不应该设置一个非null值,但是我意识到我根本不知道如何区分decimal和decimal?
确定属性im设置的类型是否继承自ValueType是否足够
发布于 2010-05-09 03:57:49
下面的代码将告诉您一个类型是否可以为空:
private bool IsNullableType(Type theType)
{
return theType.IsGenericType &&
theType.GetGenericTypeDefinition().Equals(typeof(Nullable<>));
}发布于 2010-05-09 03:58:47
来自MSDN
可空类型是
System.Nullable<T>结构的实例。
https://stackoverflow.com/questions/2795402
复制相似问题