EF CORE使用HasColumnType配置字段类型

发布时间:2020-07-10 08:15:45来源:本站阅读(992)

    最近用EF Core Code First创建表的时候,decimal类型在migration的时候一直黄色提示,原因是需要指定下精度。

    看代码

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
    modelBuilder.Entity<Bzj>(o =>
    {
    o.Property(x => x.ActualAmount).HasColumnType("decimal(18,2)");
    o.Property(x => x.Amount).HasColumnType("decimal(18,2)");
    });
    base.OnModelCreating(modelBuilder);
    }

    这是在.net core下的代码。

    以下为frame work下的代码

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
    modelBuilder.Entity<CommunityGoodsMoneyDayStatistics>().Property(p => p.ReturnMoney).HasPrecision(18, 3);
    base.OnModelCreating(modelBuilder);
    }

    翻到以前的项目里还用到时间戳防并发。如下

    modelBuilder.Entity<Order>().Property(x => x.TimeVersion).IsConcurrencyToken();

    记录下。

关键字HasColumnType