Entity Framework Core 2.0:错误不包含 UseSqlServerIdentityColumn 的定义

5 c# sql-server entity-framework asp.net-core

我正在使用 SQL Server 为 Entity Framework Core 2 中的标识列编写此内容,并收到此错误

Propertybuilder 不包含 UseSqlServerIdentityColumn 的定义

我该如何解决?

在此输入图像描述

Col*_*ett 4

在 EF Core 2.0 中,语法发生了一些变化。这个方法现在应该可以工作:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{    
  modelBuilder.Entity<MyEntity>(b =>
  {
    b.HasKey(e => e.Identifier);
    b.Property(e => e.Identifier).ValueGeneratedOnAdd();
  }
}
Run Code Online (Sandbox Code Playgroud)

我的猜测是这样做是为了可以跨存储提供程序(而不仅仅是 SQL Server)使用相同的方法。

大部分复制自此处的类似答案:https ://stackoverflow.com/a/35847279/2343739