首页 文章

Await正在处理DbContext - 已经处理了ObjectContext实例

提问于
浏览
-1

我在 async 方法中有以下内容: dbContext 实例传入其中:

var userIds = await GetUserIds(db);

使用GetUserIds:

private async Task<List<int>> GetUserIds(AppContext db)
    {
        var items = await db.Items.Where(s => s.IsValid).Distinct().ToListAsync(); // simplified
        return items;
    }

但我得到:

{“ObjectContext实例已被释放,不能再用于需要连接的操作 . ”}

我可以通过删除 awaitToListAsync 来强制执行此操作,但显然这只是一个绑带 . 为什么我的背景会被处理?

1 回答

  • 3

    我怀疑 GetUserIds 方法的调用者是在操作完成之前处理上下文 . 在处理上下文之前,您确定要等待返回的任务吗?

相关问题