dt.Rows[0][0].ToString() 怎样判断里面有没有数据 如=="" 这样好像不可以 没有返回的行数 就会出错

2024-11-26 21:44:17
推荐回答(4个)
回答1:

if( dt == null || dt.Rows == null || dt.Rows.Count <= 0 || dt.Rows[0][0] == null || string.IsNullOrEmpty( dt.Rows[0][0].ToString() ) )
这个代码有一个问题,结果集的列数是0会报错。你要是还觉得不保险,就把dt.Columns的判断也加上。

回答2:

当行数大于0的时候开始判断,没有行数的时候不判断就不会有错了。

回答3:

照我样这写就不存在ToString() 强转空指针异常
if (dt.Rows.Count != 0)//判断是否是数据
{
if (!string.IsNullOrEmpty(Convert.ToString(dt.Rows[0][0])))//判断是否是空值
{
//安全得到不为空的值
}
}

回答4:

你可以判断dt有没有行数
如判断行数是否大于0 if( dt.rows.count > 0){...}
或者 if(dt.rows[0][0] == null || dt.rows[0][0]==""){...}