我有一个数据库字段定义为十进制(9,9)。 C#中的edmx模型将此字段映射为精度和比例为9的十进制变量。保存添加额外的小数位
我把数字5放在变量中。我可以检查的任何地方显示值为5(在局部变量,实体类实例,数据上下文等中)。
在DataContex.SaveChanges()
时,该值被转换为“5.000000000”。尽我所能地告诉实体框架在将数据保存到数据库之前将9个小数位添加到该值。这会导致错误,因为该值现在有太多数字。
有没有人知道是什么原因导致了这种行为,我该如何改变它?
添加信息 - 我开始在Microsoft SQL 2008 R2中创建数据库。然后我从数据库中生成实体框架模型。
你把5存为一个字符串吗?或者作为一个小数?或者int? – abatishchev 2012-04-16 17:07:00
在程序中我输入了一个5.0的值。检查变量在Visual Studio中显示“十进制”值为5。 – 2012-04-16 17:22:33
@abatishchev如果你正在谈论数字文字,那么5.0是双倍的,但5.0m是十进制。 – phoog 2012-04-16 17:30:54