.net mvc decimal默认为小数点 后2位 如果不处理过,需要保留四位或者更多位数,那么后面都是补0的操作
即:理想是0.1234 结果却是 0.1200
更改设置
推荐方法:
如果是EF生成的在Mapping中,可以完美解决
this.Property(t => t.yuezhejiulv).HasPrecision(18,4).HasColumnName("yuezhejiulv");
public DepreciationMap()
{
this.ToTable("operate_depreciation");
this.HasKey(t => t.F_Id);
this.Property(t => t.yuezhejiulv).HasPrecision(18,4).HasColumnName("yuezhejiulv");
}
PS:
在我们现在的MovieDBContext类中重载OnModelCreating方法,代码如下所示。
以下这个方法,理论上是可以的,但是要处理模型却感觉麻烦了一些
public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Movie>().Property(p => p.Price).HasPrecision(18, 2);
}
}
关于界面显示还要注意的
@Html.EditorFor(model => model.tbzje_D)
修改为
@Html.TextBoxFor(model => model.zbje_D)
EditorFor默认显示2位的