EF decimal 精度缺失问题 解决方案

EF decimal 精度缺失问题

网上大多数方法为给实体对象加载Attribute属性来解决,但是比较麻烦,针对部分只需要将精度设定为固定值的需求并不合适,例如:Attribute属性解决精度缺失问题方案
经过研究后,还可以加载一个统一的解决方案在Attribute属性前,作为默认精度,添加Attribute属性后,以Attribute属性为准的方案:
重载OnModelCreating

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
	....
	//添加默认精度属性(18,6),当decimal没有设置Attrubute时,该属性起作用
	modelBuilder.Properties().Where(t=>t.PropertyType==typeof(decimal))
	.Configure(m=>m.HasPrecision(18,6));
	
	//加载Attribute精度设定,可以覆盖默认精度属性
	modelBuilder.Conventions.Add(new DecimalPrecisionAttributeConvention()); 
	....
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值