【发布时间】:2020-01-22 10:12:31
【问题描述】:
我将 postgresql db 与 entityframework 核心和 npgsql 核心一起使用。我有一个名为“索引”的属性,它是身份类型列。索引列不是ID列,而是db生成的序列列。它标有“UseNpgsqlIdentityAlwaysColumn()”以在添加时由 db 生成值。
插入(添加)操作没有问题。但是,在更新实体时,我收到错误“428C9:列“索引”只能更新为默认值”
我试图标记为“ValueGeneratedOnAdd()”。但这没有帮助。
builder.Property(x => x.Index).ValueGeneratedOnAdd().UseNpgsqlIdentityAlwaysColumn();
如何更新忽略“索引”属性的实体?
非常感谢。
【问题讨论】:
-
您是否尝试更新索引属性的值?如果是这样,那对于 IDENTITY ALWAYS 列是不可能的,但是对于 IDENTITY BY DEFAULT 列是可能的。如果你有不同的问题,你能发布一个完整的代码示例吗?
-
不管用
ValueGeneratedOnAdd
标签: c# postgresql entity-framework-core npgsql ef-core-2.2