C# 未找到“EntityQueryable”。确保已将实体类型添加到模型中

C# 未找到“EntityQueryable”。确保已将实体类型添加到模型中,c#,.net-core,entity-framework-core,C#,.net Core,Entity Framework Core,我正在使用一种通用方法,该方法采用逻辑模型和Repo模型,这样我就有了可以更新显示顺序的可重用代码 实际的EF调用工作得很好,但是我得到了错误 找不到实体类型“EntityQueryable”。确保已将实体类型添加到模型中 我正在使用的代码在这里 internal async Task<List<LogicModel>> UpdateDisplayOrderAsync<LogicModel, RepoModel>(List<GridItemAndSort

我正在使用一种通用方法,该方法采用逻辑模型和Repo模型,这样我就有了可以更新显示顺序的可重用代码

实际的EF调用工作得很好,但是我得到了错误

找不到实体类型“EntityQueryable”。确保已将实体类型添加到模型中

我正在使用的代码在这里

internal async Task<List<LogicModel>> UpdateDisplayOrderAsync<LogicModel, RepoModel>(List<GridItemAndSortOrderLogicModel> models) where RepoModel : TrainingBase
    {
        using (var context = GetDbContext())
        {
            var originals = context.Set<RepoModel>().Where(a => models.Select((b => b.Id)).Contains(a.Id));

            var loopy = from o in originals
                join m in models on o.Id equals m.Id
                select new { o, m };

            foreach (var loop in loopy)
            {

                loop.o.DisplayOrder = loop.m.DisplayOrder;

                context.Entry(loop.o).CurrentValues.SetValues(loop.o);
                context.Entry(loop.o).State = EntityState.Modified;
            }

            await context.SaveChangesAsync();
            _logger.LogInformation($"->> Updated comptency display order");
            var retVal = context.Entry(originals).Entity.Adapt<List<LogicModel>>();
            return retVal;
        }
    }
此调用是从此处的此代码块进行的

public async Task<List<ReportCompetencyLogicModel>> UpdateCompetencyDisplayOrderAsync(List<GridItemAndSortOrderLogicModel> models) => await base.UpdateDisplayOrderAsync<ReportCompetencyLogicModel, RepositoryModel.ReportCompetency>(models);
获取错误的行是var retVal=context.Entryoriginals.Entity.Adapt


对于如何通过这项考试的任何和所有帮助,我都将不胜感激

所以返回应该是一个任务…不知道是不是这样,但值得检查这是ef核心还是ef?这是.net还是.net内核?请简化你的程序tags@JohnB是的,这就是核心的意图streamlined@SimonPrice我很清楚这一点。但是,Entry调用将检索具有传递参数类型的元素的DbSet,以访问跟踪的实体。跟踪对象的DbSet的类型是DbSet,而不是DbSet,因此entry调用找不到查找条目的位置,并引发此异常。通常,它找不到DbSet,因为传递的实体不是模型的一部分,而不是由于编程错误