我试图使用ToListAsync与一些Linq,它使用选择来创建一个新对象列表 .

using (dbContext = new MyEntities())
        {
            var listProjectToolFields = await (from pf in dbContext.ProjectToolFields
                join c in dbContext.CustomFields on pf.CustomFieldId equals c.CustomFieldId
                join pt in dbContext.ProjectTools on pf.ProjectToolId equals pt.ProjectToolId
                where pt.ProjectId == projectId && pt.ToolId == toolId && !c.IsDeleted
                select new ProjectToolField
                {
                    ProjectToolFieldId = pf.ProjectToolFieldId,
                    ProjectId = pt.ProjectId,
                    ToolId = pt.ToolId,
                    CustomField = new CustomField
                    {
                        CustomFieldId = c.CustomFieldId,
                        CustomFieldName = c.CustomFieldName,
                        FieldGroupIds = c.FieldGroupIds
                    },
                    SequenceNo = pf.SequenceNo
                }).ToListAsync();
            return listProjectToolFields;
        }

CustomField只是一个具有自动实现属性的简单类 .

当我得到错误时:ObjectContext实例已被释放,不能再用于需要连接的操作 .

但我正在等待,所以我怎么能克服这个?我真的需要使用async,它可以在没有async / await的情况下工作,但我需要更改代码才能使用它们 .