我想检查sqldatareader是否为空。所以我尝试了下面的代码:
if (x[k]!= DBNull.Value)
{
box.Text = Convert.ToString(x[k++]);
if ((box.Text) != "")
current[j - 1] = Convert.ToDouble(box.Text);
else current[j - 1] = 0;
box.Enabled = false;
}但是,当尝试检查datareader中的值时,它会抛出一个错误,“当没有数据时,读取数据的尝试无效”。我还应该如何检查数据是否在那里。!!请帮帮忙。这里x是一个sqldatareader x= cmd.ExecuteReader();SqlDataReader是一个select命令..
发布于 2011-04-06 11:38:42
您可以执行null检查,并在访问DataRows之前使用Row。
像这样
if(null != x && x.HasRows)
{
//Your code
}发布于 2011-04-06 11:37:21
您可以使用SqlDataReader.HasRows -如果存在至少一行数据,则为真,或者您可以使用SqlDataReader.Read()读取所有结果;
因此,对于您的示例:
while(x.Read())
{
//read stuff
}https://stackoverflow.com/questions/5561162
复制相似问题