我有这个示例代码:
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using Models;
namespace MySampleNamespace
{
public class MyDbContext : DbContext
{
public MyDbContext(DbContextOptions<MyDbContext> options)
: base(options)
{
}
public DbSet<User> Users { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
new UserMap(modelBuilder.Entity<User>());
}
public class UserMap
{
public UserMap(EntityTypeBuilder<User> entityBuilder)
{
entityBuilder.ToTable("User");
entityBuilder.Property(s => s.Username).HasMaxLength(15).IsRequired();
}
}
}
}
我正在测试 MS 网站上的一些示例,但找不到 ToTable 方法。在这个例子中,我检查了Usings是什么,除了他正在使用的模型的类项目之外,唯一的Using例子是Microsoft.EntityFrameworkCore。这是改了吗?我现在该怎么做?
最佳答案
正如伊万所说,安装 Microsoft.EntityFrameworkCore.Relational
是正确的解决方案。
关于entity-framework - EntityTypeBuilder 不包含 EF Core 中 ToTable 的定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43200184/