为什么我的C#十进制值四舍五入为整数

阿夫罗洪·伊斯洛尔(Avrohom Yisroel)

我有一个包含Decimal公共属性的类(由Entity Framework生成,代码显示在下方),并存在将其四舍五入为整数的问题。

我正在阅读一个文本文件,并按如下方式解析数字(为清晰起见,省略了大多数代码)...

decimal val = decimal.Parse(str);
Transaction t = new Transaction {
  Value = val
};

如果我检查val,我可以看到它包含完整的值,例如9.99,并且如果我检查Value属性,那是正确的。但是,将对象保存到数据库时,该值将四舍五入到最接近的整数,从而丢失小数部分。

数据库具有定义为十进制(18,0)的字段,EF对此进行了选择,并使用了Decimal类型作为属性。

这是EF为属性生成的代码...

    [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
    [DataMemberAttribute()]
    public global::System.Decimal Value
    {
        get
        {
            return _Value;
        }
        set
        {
            OnValueChanging(value);
            ReportPropertyChanging("Value");
            _Value = StructuralObject.SetValidValue(value);
            ReportPropertyChanged("Value");
            OnValueChanged();
        }
    }
    private global::System.Decimal _Value;
    partial void OnValueChanging(global::System.Decimal value);
    partial void OnValueChanged();

任何人有任何想法怎么了?

乔恩·斯基特

数据库的字段定义为十进制(18,0)

那就是问题所在。0scale引用文档

scale:将存储在小数点右边的小数位数。

换句话说,您的数据库列只能保存整数。我怀疑您想要类似的东西decimal(28,10)(取决于您的价值观)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么在SQL插入中将十进制值四舍五入为整数?

来自分类Dev

如何将十进制数四舍五入为最小整数?

来自分类Dev

如何将十进制值四舍五入到最接近的整数?

来自分类Dev

为什么这个 PHP 函数/MySQL 数据库四舍五入十进制值?

来自分类Dev

如果十进制值为0.6或更高,则四舍五入

来自分类Dev

角十进制管道在我输入时四舍五入导致值错误

来自分类Dev

如何在C ++中四舍五入十进制值?

来自分类Dev

十进制自动四舍五入

来自分类Dev

将双精度值四舍五入为2个十进制数字

来自分类Dev

为什么十进制四舍五入到1位有效数字?

来自分类Dev

PHP:将数字四舍五入为16个十进制数字

来自分类Dev

PHP:将数字四舍五入为16个十进制数字

来自分类Dev

如何将十进制数字四舍五入为指定的位数?

来自分类Dev

角输入范围滑块四舍五入十进制数据绑定值

来自分类Dev

sql server四舍五入取决于十进制值

来自分类Dev

为什么C#这样四舍五入?

来自分类Dev

PHP csv 导入需要帮助 - 插入表时十进制值变为四舍五入值

来自分类Dev

将数据类型更改为浮点并四舍五入为2个十进制数字

来自分类Dev

我想在 python 中将变量四舍五入到最接近的 0.5 十进制

来自分类Dev

JavaScript 添加多个十进制数并将值四舍五入到 0.59 之后

来自分类Dev

在SQL Server 2008中四舍五入十进制数字

来自分类Dev

四舍五入SQL十进制零然后求和

来自分类Dev

仅在需要时显示双精度十进制(四舍五入问题)

来自分类Dev

django浮点数或十进制数在保存时无意四舍五入

来自分类Dev

如何在R中四舍五入到特定的十进制数字

来自分类Dev

四舍五入SQL十进制零然后求和

来自分类Dev

django浮点数或十进制数在保存时无意四舍五入

来自分类Dev

四舍五入到最接近的指定数字(十进制)

来自分类Dev

如何四舍五入一个十进制数?

Related 相关文章

  1. 1

    为什么在SQL插入中将十进制值四舍五入为整数?

  2. 2

    如何将十进制数四舍五入为最小整数?

  3. 3

    如何将十进制值四舍五入到最接近的整数?

  4. 4

    为什么这个 PHP 函数/MySQL 数据库四舍五入十进制值?

  5. 5

    如果十进制值为0.6或更高,则四舍五入

  6. 6

    角十进制管道在我输入时四舍五入导致值错误

  7. 7

    如何在C ++中四舍五入十进制值?

  8. 8

    十进制自动四舍五入

  9. 9

    将双精度值四舍五入为2个十进制数字

  10. 10

    为什么十进制四舍五入到1位有效数字?

  11. 11

    PHP:将数字四舍五入为16个十进制数字

  12. 12

    PHP:将数字四舍五入为16个十进制数字

  13. 13

    如何将十进制数字四舍五入为指定的位数?

  14. 14

    角输入范围滑块四舍五入十进制数据绑定值

  15. 15

    sql server四舍五入取决于十进制值

  16. 16

    为什么C#这样四舍五入?

  17. 17

    PHP csv 导入需要帮助 - 插入表时十进制值变为四舍五入值

  18. 18

    将数据类型更改为浮点并四舍五入为2个十进制数字

  19. 19

    我想在 python 中将变量四舍五入到最接近的 0.5 十进制

  20. 20

    JavaScript 添加多个十进制数并将值四舍五入到 0.59 之后

  21. 21

    在SQL Server 2008中四舍五入十进制数字

  22. 22

    四舍五入SQL十进制零然后求和

  23. 23

    仅在需要时显示双精度十进制(四舍五入问题)

  24. 24

    django浮点数或十进制数在保存时无意四舍五入

  25. 25

    如何在R中四舍五入到特定的十进制数字

  26. 26

    四舍五入SQL十进制零然后求和

  27. 27

    django浮点数或十进制数在保存时无意四舍五入

  28. 28

    四舍五入到最接近的指定数字(十进制)

  29. 29

    如何四舍五入一个十进制数?

热门标签

归档