在C#

时间:2017-07-11 12:09:57

标签: c# sql

我有一个SQL表,其属性为'Stock',数据类型为float。 根据几个帖子,C#中的等效类型是双倍的。

所以我得到了一个输入,这是一个字符串,我将它转换为双重值,如下所示:

var number = Convert.ToDouble(numberAsString, CultureInfo.CurrentCulture.NumberFormat);

我有以下代码在股票的顶部添加数字:

result.Bestand += number;

不知何故(这对我来说真的很奇怪)如果我正好三次添加“0,1”,则值会更改为15,299999999999999。我不知道为什么。

请记住:我使用的是逗号而不是小数点。

1 个答案:

答案 0 :(得分:0)

您应该在SQL中使用数字/十进制类型。但是,如果您的股票是float类型,那么为什么需要将值读为字符串?