我有一个现有的数据库,其中包含一个定义为MinimumInterestRate DECIMAL(10, 8)
的列。
我有一个包含
的实体框架映射Property(t => t.MinimumInterestRate).HasColumnName("MinimumInterestRate")
当我将记录保存到数据库时,实体框架将我的列视为具有2而不是8的比例,并且在数据库中静默记录一个值,而不是我试图在那里写入的值
我注意到映射条目上有一个.HasPrecision(Precision, Scale)
方法,我可以用它来通知Entity Framework我的列的定义。但是,对我来说似乎很疯狂,我必须在两个位置保留这些信息(很容易从数据库中导出),并保持同步。
这不是代码优先的情况,数据库和实体框架映射是单独手动创建的。
有没有办法指示实体框架从数据库中读取精度和比例?如果失败了,有没有办法指示实体框架抛出错误而不是为DECIMAL字段保存不正确的数据?