我正在使用EF Core Power Tools
版本2.4.0
和Miccrosoft.EntifyFrameworkCore.SqlServer
版本2.2.6
我将SQL表列IsActive
定义为[IsActive] [bit] NOT NULL
我使用EF Core Power Tool的反向工程来生成实体和数据库上下文。
问题该工具会生成可为空的布尔属性,而不仅仅是布尔]
public bool? IsActive { get; set; }
相应的DBContext的OnModelCreating方法
modelBuilder.Entity<Scenario>(entity =>
{
entity.Property(e => e.ScenarioID).HasColumnName("ScenarioID");
entity.Property(e => e.IsActive)
.IsRequired()
.HasDefaultValueSql("((1))");
}
EF Core使用CLR默认值来确定是否使用SQL默认值。