我想在我的实体上使用[DefaultValue]注释来指定在创建时存储在数据库中的默认值,而不是设置状态值。
// ApprovalStatus is Enum
// Pending = 2
[DefaultValue(ApprovalStatus.Pending)]
public ApprovalStatus Status { get; set; }
但遗憾的是,创建和保存实体时存储在数据库中的值为0而不是2。
我做错了什么?
谢谢和亲切的问候, 尼古拉
答案 0 :(得分:2)
您必须使用流畅的API,此方案不支持数据注释:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>()
.Property(b => b.Status)
.HasDefaultValue(ApprovalStatus.Pending);
}
请参阅https://docs.efproject.net/en/latest/modeling/relational/default-values.html