我有一个SQL表,其属性为'Stock',数据类型为float。 根据几个帖子,C#中的等效类型是双倍的。
所以我得到了一个输入,这是一个字符串,我将它转换为双重值,如下所示:
var number = Convert.ToDouble(numberAsString, CultureInfo.CurrentCulture.NumberFormat);
我有以下代码在股票的顶部添加数字:
result.Bestand += number;
不知何故(这对我来说真的很奇怪)如果我正好三次添加“0,1”,则值会更改为15,299999999999999
。我不知道为什么。
请记住:我使用的是逗号而不是小数点。
答案 0 :(得分:0)
您应该在SQL中使用数字/十进制类型。但是,如果您的股票是float类型,那么为什么需要将值读为字符串?