博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
判断一个值是不是DBNull.Value
阅读量:7024 次
发布时间:2019-06-28

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

C#读取数据库返回DataTable,遍历 DataTable,

在DataRow dr, 假如dr[0]是一个可空的值类型的字段,那么要赋值给C#程序的一个值类型(可空类型变量这里不讨论)变量时,

可以这样判断dr[0]是不是DBNull:     

int num=dr[0].Equals(DBNull.Value) ? 0 : Convert.ToInt32(dr[0]);

这样写使得代码简洁,易读,少一些if...else...

 

判断一个类型是不是DBNull.Value的方法如下:

object obj = DBNull.Value;            bool b = obj.Equals(DBNull.Value);            if (b == true)            {                Console.WriteLine("obj is a DBNull");            }            else            {                Console.WriteLine("obj is not a DBNull");            }            Console.ReadKey();

 

总结了三种方法:

while (dr.Read())//循环读取             {                          //第一种方法判断是不是DBNull.Value                    int num1=dr.IsDBNull(0)?0:dr.GetInt32(0);                    //第二种方法判断是不是DBNull.Value                    int num2 = dr[1].Equals(DBNull.Value) ? 0 : Convert.ToInt32(dr[1]);                    //第二种方法判断是不是DBNull.Value                    int num3 = string.IsNullOrEmpty(dr[2].ToString()) ? 0 : Convert.ToInt32(dr[2]);           }

 

转载于:https://www.cnblogs.com/527289276qq/p/5446259.html

你可能感兴趣的文章
javascript之this指向
查看>>
FTP实时更新上传脚本
查看>>
awk中多个分隔符^识别办法
查看>>
Centos7 初始化MySQL5.7数据库
查看>>
从零开始的linux 第十八章
查看>>
c#获取逻辑硬盘信息
查看>>
vSphere虚拟化之vClient安装虚拟机
查看>>
23种设计模式介绍(二)---- 结构型模式
查看>>
IOT物联网观察之商业本质是价值交换,物量经济交换逻辑是什么?
查看>>
MySQL8.0 新特性:Partial Update of LOB Column
查看>>
计算机网络数据链路层
查看>>
Python库的使用
查看>>
云上自动化:全球云上自动化编排系统比拼
查看>>
解读AI行业发展趋势
查看>>
嵌入式开发培训都要学什么?零基础参加嵌入式学习培训能学会吗
查看>>
flume的初体验
查看>>
hbase的基本操作
查看>>
DevOps工程师到底做些什么?
查看>>
解析RDD在Spark中的地位
查看>>
高质量SEO文章编辑规范技巧之:格式
查看>>