簡體   English   中英

ASP.NET Core DB-first Entity Framework Core 不能自動增加主鍵

[英]ASP.NET Core DB-first Entity Framework Core can not auto increment primary key

我有一個 ASP.NET 核心項目。 我在 SQL 服務器上使用數據庫優先方法,並使用 EF Core 生成了我的模型。

我希望主鍵自動遞增。 在將我的主鍵( PimId )默認為 0 的第一個條目上,一切似乎都工作正常。但是,在第二次插入時,主鍵仍然為 0。

我的onModelCreate function

modelBuilder.Entity<ImportPim>(entity =>
        {
            entity.HasKey(e => e.PimId);
            entity.ToTable("Import_PIM");

            entity.Property(e => e.PimId)
                .HasColumnName("PIM_Id")
                .ValueGeneratedNever();

            entity.Property(e => e.CliId).HasColumnName("CLI_Id");

            entity.Property(e => e.PimAccountNumber)
                .HasColumnName("PIM_AccountNumber")
                .HasMaxLength(50)
                .IsUnicode(false);

這是由 EF Core 生成的,我嘗試將ValueGeneratedNever()更改為ValueGeneratedOnAdd()但在 SQL 服務器中出現保存錯誤。

關於如何做的任何建議?

ValueGeneratedOnAdd() 應該可以工作。 如果沒有,請確保在 SQL 服務器的表中為 PimId 設置身份。

    entity.Property(e => e.PimId)
        .HasColumnName("PIM_Id")
        .ValueGeneratedOnAdd();

您可以將其設置為身份(自動增量),如下所示:

 modelBuilder.Entity<ImportPim>().Property(entity => entity.PimId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM