获取错误:当读取器关闭且 Ef 核心中的 Ef asp.net 时,尝试调用 Read

Get Error Invalid Attempts to call Read when reader is closed with Ef core in asp.net core

提问人:محمد مهدی الماسی 提问时间:10/19/2023 更新时间:10/19/2023 访问量:39

问:

当我使用 ef core 查询 Db 时出现错误,这是(当读取器关闭时,调用 Read 的尝试无效

我的操作代码是:

  public IActionResult Index()
        {
            List<ShowQuestionViewModel> showQuestions = new List<ShowQuestionViewModel>();
            foreach(var file in SchContext.QFile)
            {
                var lesson = SchContext.lessons.Include(lesson => lesson.field).Include(lesson => lesson.level).SingleOrDefault(l => l.Id == file.Id);
             
                var SampleQ = new ShowQuestionViewModel()
                {
                    qfile = file,
                    lessonName = lesson.Name,
                    FieldName = lesson.field.Name,
                    LevelName = lesson.level.Name,
                };
                 showQuestions.Add(SampleQ);
                SchContext.Dispose();
            }

起初我得到 erorr 说“已经有一个与此连接关联的打开的 DataReader,必须首先关闭”因此我添加了 MultipleActiveResualtSets=true;到我的 connectionstring 解决这个问题,这个问题解决了,但是这个 erorr 显示我,我不知道我该怎么办?请帮忙

c# asp.net sql-服务器 Visual-Studio 实体框架核心

评论


答:

1赞 محمد مهدی الماسی 10/19/2023 #1

我唯一的问题是我使用 SchContext.Dispose();所以当我删除我的问题时,我的问题解决了

评论

0赞 wenbingeng-MSFT 10/23/2023
你的答案很有帮助,你可以标记它,这样它就可以帮助更多的人
0赞 محمد مهدی الماسی 10/24/2023
Tnks 供您评论