在.NET中,当我添加两个SqlDecimals时,如下所示:

SqlDecimal s1 = new SqlDecimal(1);
SqlDecimal s2 = new SqlDecimal(1);
SqlDecimal s3 = s1 + s2;

则s3的精度为2,而s1和s2的精度均为1。

这似乎很奇怪,尤其是在文档中指出加法运算符的返回值是“其Value属性包含总和的新SqlDecimal结构”时。 IE。根据文档,加法不应改变精度。

我在这里想念什么吗?这是预期的行为吗?

干杯,

蒂尔曼

最佳答案

This article(http://msdn.microsoft.com/zh-cn/library/ms190476.aspx)解释了SQL类型的行为,并且我假定.NET Sql数据类型在其行为中反射(reflect)了这一点。

关于c# - 添加两个.NET SqlDecimals可以提高精度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6458502/

10-10 05:53