如何使用Entity Framework Core代码优先在位字段上设置默认值?

时间:2017-05-10 01:18:30

标签: c# asp.net-core entity-framework-core

这是我的代码:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Skill>()
        .Property(s => s.FlagTrainedOnly)
        .HasDefaultValue(false);
}

我得到的错误:

  

错误CS1061
  'PropertyBuilder'不包含'HasDefaultValue'的定义,并且没有可以找到接受类型'PropertyBuilder'的第一个参数的扩展方法'HasDefaultValue'(你是否缺少using指令或汇编引用?)

1 个答案:

答案 0 :(得分:0)

确保你有

using Microsoft.EntityFrameworkCore;

在顶部,然后尝试将它放在这样的一行

protected override void OnModelCreating(ModelBuilder modelBuilder) {
    modelBuilder.Entity<Skill>().Property(p => p.FlagTrainedOnly).HasDefaultValue(false);
}

然后把它放在多行上。我认为有时需要提醒的是,点扩展名存在。