EF6 中不包含“CreateObjectSet”的定义并且没有扩展方法“CreateObjectSet”

问题描述 投票:0回答:1

我正在使用 Entity Framework 6,但以下代码抛出错误。该代码是从旧的 EF 版本迁移而来的,它运行良好。

using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Data.Entity.Core.Objects;

using (var context_ = new MyEntities())
{
        ObjectSet<FieldHeader> query = context_.CreateObjectSet<FieldHeader>(); /error on this line
        replaceField(query, dsSet.Tables[0]);
}

错误
不包含“CreateObjectSet”的定义,并且没有扩展方法“CreateObjectSet”

如何在 EF6 中使用它?

asp.net-mvc entity-framework-6
1个回答
0
投票

据我所知ObjectSet用于查询、添加、修改和删除对象,

因此您需要更改添加适合 Ef6 的对象的代码 在 Ef6 中我们使用了 DbContext Apis

public IDbSet<Report> Reports { get; set; }

ObjectSet 也被 DbSet 取代,但我建议更改或切换到 DbContext 和 DbSet 以更简单

你可以尝试这些方法:

  DbSet<FieldHeader> query = context_.Set<FieldHeader>();

replaceField(query, dsSet.Tables[0]);
© www.soinside.com 2019 - 2024. All rights reserved.