博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nullable 类型的转换
阅读量:7206 次
发布时间:2019-06-29

本文共 2008 字,大约阅读时间需要 6 分钟。

一直都是个头疼的问题,感谢

1.

public object ChangeType(object value, Type conversionType){    if ( conversionType.IsGenericType &&        conversionType.GetGenericTypeDefinition( ).Equals( typeof( Nullable<> ) ) ) {         if(value == null)            return null;         System.ComponentModel.NullableConverter nullableConverter            = new System.ComponentModel.NullableConverter(conversionType);         conversionType = nullableConverter.UnderlyingType;    }     return Convert.ChangeType(value, conversionType);}
 

引用:

2.

public class DataTypeConverter    {        public static object ChangeType(Type type,object value)        {            if ((value == null) && type.IsGenericType)            {                return Activator.CreateInstance(type);            }            if (value == null)            {                return null;            }            if (type == value.GetType())            {                return value;            }            if (type.IsEnum)            {                if (value is string)                {                    return Enum.Parse(type, value as string);                }                return Enum.ToObject(type, value);            }            if (!type.IsInterface && type.IsGenericType)            {                Type type1 = type.GetGenericArguments()[0];                object obj1 = DataTypeConverter.ChangeType(type1,value);                return Activator.CreateInstance(type, new object[] { obj1 });            }            if ((value is string) && (type == typeof(Guid)))            {                return new Guid(value as string);            }            if ((value is string) && (type == typeof(Version)))            {                return new Version(value as string);            }            if (!(value is IConvertible))            {                return value;            }            return Convert.ChangeType(value, type);        }    }
引用:
本文转自today4king博客园博客,原文链接:http://www.cnblogs.com/jinzhao/archive/2009/11/03/1595076.html,如需转载请自行联系原作者
你可能感兴趣的文章
计算机学科漫谈
查看>>
mac下配置openfire
查看>>
自定义控件实现(转)
查看>>
如何确认访客所在的国家
查看>>
跟着8张思维导图学习javascript
查看>>
InnoSQL/MySQL并行复制的实现与配置
查看>>
JDBC连接MySQL数据库及演示样例
查看>>
第38周五
查看>>
windows下Emacs的安装与配置
查看>>
WF4 常用类<第二篇>
查看>>
mongo文件空间
查看>>
NSArray中存的是实体时的排序
查看>>
搜索框中“请输入搜索keyword”
查看>>
CentOS6.5与XP双系统安装
查看>>
Python 更新set
查看>>
shell语法简单介绍
查看>>
Web服务器的工作原理
查看>>
使用WinSetupFromUSB来U盘安装windowsXP(不使用win PE系统)
查看>>
JAVA Calendar具体解释
查看>>
MongoDB入门简单介绍
查看>>