插入时将 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
我想使用如下方法将主键插入另一列:-
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