【发布时间】:2019-03-21 22:28:28
【问题描述】:
我在我的实体中有一个这样配置的 SQL Server 中的计算主键:
var e = builder.Entity<MyEntity>();
e.ToTable("MyTable", "MySchema")
.HasKey(k => k.Id);
e.Property(k => k.Id)
.ValueGeneratedOnAdd();
e.Property(k => k.Id)
.Metadata.BeforeSaveBehavior = PropertySaveBehavior.Ignore;
e.Ignore(i => i.PreviousId);
如何在 EF Core 2.1 中保存更改后更新属性?
myEntity.RelatedProperty = 1;
_db.SaveChangesAsync();
// Here I want to have my updated Id
更新: 这是表定义:
CREATE TABLE [MySchema][MyTable](
[Id] AS (isnull((CONVERT([nvarchar],[RelatedProperty],(0))+'-')+CONVERT([nvarchar],[RelatedProperty2],(0)),'-')) PERSISTED NOT NULL,
[RelatedProperty] [int] NOT NULL,
[RelatedProperty2] [int] NOT NULL
CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
【问题讨论】:
标签: sql-server entity-framework ef-core-2.1 computed-properties