插入时将 PK 添加到另一列

adding PK into another column when inserting

我想使用如下方法将主键插入另一列:-

Id  |  PaddedID |
----------------
6   |  0000006  |
7   |  0000007  |

有没有办法在 db.SaveChanges() 中一次性实现?我知道我可以获得如下 ID 并更新 PaddedID:-

int id = Result.Id;

有没有办法使用 LINQ 告诉它用 PK 填充一些值并将其插入 PaddedID 列?

感谢指点....

你有没有使用 HasComputedColumnSql 并尝试过这样的事情:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<YouEntity>()
        .Property(p => p.PaddedID)
        // here is the computed query definition
        .HasComputedColumnSql("[Id]");
}

您可以使用 FORMAT 集成函数为 PaddedID 使用持久计算列,如下所示:

ALTER TABLE MyTable ADD PaddedID AS FORMAT(Id, '00000000') PERSISTED