用SqlDataReader读数据后判断[字段或记录]是否为空

使用IDataReader时,你是否已经进行了Read()操作?

if(reader.Read())
{
item.Id = reader["Id"].ToString();// 如果为dbnull,ToString后返回一个空字符串的。
}

估计你没有进行Read操作

另外:reader["Id"] is DBNull
表示该字段值是否为 DBNull 类型,而不是判断是否等于空值。
应该这样 reader["Id"] == DBNull.Value
或者用函数 reader.IsNull(n)

 

 

用阅读器.判断是否有记录.
if(datareader.hasread())

你可能感兴趣的:(用SqlDataReader读数据后判断[字段或记录]是否为空)