c# 数据集DBNull报错问题的解决方案

来源:互联网 发布:js window对象 编辑:程序博客网 时间:2024/05/26 02:55

假定数据集名称为DataResult

其中中有一列,名为DataColumn,其保存的数据类型为System.String,在数据库中取数据时,若DataColumn不为DBNULL,一般采用下面的方法进行取值:

DataResult dr = new DataResult();

string dataGet = dr.DataColumn;//但是当该列为空时,会抛出异常,即使将该列的属性改为-值为null时设置为empty,也会因为类型安全的问题触发强类型无法转换的问题


此时,可采取以下方法进行解决:

不使用“点”语法,而采用dr[“DataColumn”]的方法进行取值,然后进行必要的判断以及转换,具体如下:

string dataGet = dr[“DataColumn”].Equals(DBNull.value)?string.empty:dr["DataColumn"];


以上代码可进行简化,使用c#的可空值类型可以将该行代码改为:

string dataGet = dr[“DataColumn”]??string.empty;




阅读全文
0 0
原创粉丝点击