我收到此错误实体框架核心中当前上下文中不存在“modelBuilder”名称,我正在使用Visual Studio 2017和Asp.Net Core 2.0
在Entity Framework 6中,我们使用以下代码来拆分实体。现在我使用Visual Studio 2017和Entity Framework Core 2.0,并在使用modelBuilder.Entity<>()
时获取“当前上下文中不存在名称'modelBuilder'”我认为现在更清楚了解。
public partial class Model : DbContext
{
public Model() : base("name=EntityModel")
{
Database.Log = Console.WriteLine;
}
public virtual DbSet<Employee> Employees { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Employee>()
.Map(map =>
{
map.Properties(p => new
{
p.EmployeeId,
p.Name,
p.Code
});
map.ToTable("Employee");
})
// Map to the Users table
.Map(map =>
{
map.Properties(p => new
{
p.PhoneNumber,
p.EmailAddress
});
map.ToTable("EmployeeDetails");
});
}
}
答案 0 :(得分:0)
现在不可能采用这种方法。看https://github.com/aspnet/EntityFrameworkCore/issues/620
你也应该使用:
protected override void OnModelCreating(ModelBuilder modelBuilder)
ModelBuilder而不是DbModelBuilder
ModelBuilder.Entity&lt;&gt;()不包含地图