sql和c#为相同的数据提供不同的总和

时间:2014-03-26 09:44:54

标签: c# sql

我在decimal(18,3)中有一个表格myTable,字段总数为SQl server 2008 R2,如果我sum(total)对于SQL中的所有记录,它会给我一个数字,比如说' 220150.36&#39 ;然而,当我将相同的记录传递给c# (VS 2010)并且我总结相同的字段总数(但现在在C#中)时,它给了我一个不同的数字' 220396' ,记录被检索到datatable,并且该数据表中的总字段是十进制类型。

任何想法?

由于

1 个答案:

答案 0 :(得分:1)

这是一个Culture问题。查看DB中存在的值的十进制seprator,在您的情况下似乎是,

尝试这样的事情:

double.Parse(val, System.Globalization.CultureInfo.GetCultureInfo("fr-FR"));

对于法国,小数点分隔符为,,因此将正确处理该值,您将获得正确的总和结果。