使用dapper框架从表中检索记录时,出现以下错误


  关闭阅读器后尝试调用Read的尝试无效


下面是我的代码

var sql = "SELECT * FROM LMS_QuestionCategory";
                var rows = new List<Dictionary<string, int>>();

                using (IDbConnection dbConnection = Connection)
                {
                    var reader = dbConnection.ExecuteReader(sql);

                    while (reader.Read())
                    {
                        var dict = new Dictionary<string, int>();

                        for (var i = 0; i < reader.FieldCount; i++)
                        {
                            dict[reader.GetName(i)] = reader.GetInt32(i);
                        }

                        rows.Add(dict);
                    }
                }


为什么我收到此错误?

最佳答案

您必须打开连接:

using (IDbConnection dbConnection = Connection)
{
   dbConnection.Open() //<--open the connection
   var reader = dbConnection.ExecuteReader(sql);
    ...

10-08 01:17