【问题标题】:datareader has rows but shows Enumeration yielded no resultsdatareader 有行但显示 Enumeration 没有结果
【发布时间】:2018-03-07 12:21:24
【问题描述】:

我使用SqlDataReader 从查询结果中读取数据,我运行调试器并且查询正在运行。 hasrows 是真的,但它显示 Enumeration 没有产生任何结果。

这是我的代码:

SqlCommand selectLastData = new SqlCommand("SELECT TOP 1 * FROM tbl_transaksi ORDER BY id DESC", conn);
using (SqlDataReader rdr = selectLastData.ExecuteReader())
{
    if (rdr.HasRows)
    {
        while (rdr.Read())
        {
           string id = rdr["id"].ToString();

        }
        rdr.Close();
    }
}

有人可以帮忙吗?谢谢

【问题讨论】:

  • 您的意思是注释掉Console.WriteLine吗?
  • 不,我已经编辑了问题,我的意思是 rdr hasrows 但数据是空的
  • @Mamen:请解释一下这是怎么回事,“数据为空”是什么意思?
  • 你能在这里提供异常和堆栈跟踪吗?
  • @Mamen:什么ResultViewSqlDataReader 不是 LINQ 查询。在循环中输出id,你会看到:Console.WriteLine(id);

标签: c# sql sql-server sqldatareader


【解决方案1】:

使用,

While(rdr.read()){
//Read your Columns values using Id or Name Here..
}

read() 函数允许从数据库中读取填充的数据。

【讨论】:

    猜你喜欢
    • 2013-04-21
    • 2021-05-27
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多