我想更新实体中的一些属性,但我没有主键属性值。我确实有唯一的键值。
我的期望是使用 C# 在 Entity Framework Core 中使用该唯一的关键属性来直接更新,而无需获取
类似:
var entity = await dbCtx.MyEntity.SingleOrDefaultAsync(e => e.Unique == value);
if (entity is not null) {
entity.Property = newValue;
await dbCtx.SaveChangesAsync();
}
如果您加载实体类型的实例(而不是其他类型的投影),您可以更新并保存它。不需要通过主键加载。
(例如,在加载父实体的集合关联中更新子实体。)