Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Azure DocumentDB十进制截断_C#_.net_Azure_Azure Cosmosdb - Fatal编程技术网

C# Azure DocumentDB十进制截断

C# Azure DocumentDB十进制截断,c#,.net,azure,azure-cosmosdb,C#,.net,Azure,Azure Cosmosdb,我目前正在使用Azure DocumentDB存储带有价格的产品数据。几乎所有的东西都工作得很好,但现在我遇到了一个问题,即我的小数(System.Decimal)在从DocumentDB读取时被截断。 例如,此价格: Input Price: 25.1132356547854257645454 输入价格:25.1132356547854257645454 将被截断为 DocumentDB Price: 25.113235654785 文件数据库价格:25.113235654785 由于我们使用

我目前正在使用Azure DocumentDB存储带有价格的产品数据。几乎所有的东西都工作得很好,但现在我遇到了一个问题,即我的小数(System.Decimal)在从DocumentDB读取时被截断。
例如,此价格:

Input Price: 25.1132356547854257645454 输入价格:25.1132356547854257645454 将被截断为

DocumentDB Price: 25.113235654785 文件数据库价格:25.113235654785 由于我们使用同步机制查找价格变化,这将导致价格变化,因为价格不再相同
我不知道如何更改DocumentDB的行为。在最坏的情况下,我将不得不削减我的投入价格,以防止这个问题,但我宁愿不

感谢您的帮助。

Azure DocumentDB按照JSON标准使用。这是必需的,以便数据可以跨不同的编程平台和应用程序进行移植。不幸的是,这可能会导致截断大整数或更高精度的十进制数,如您所见

为了解决这个问题,请考虑将这个数字分解成两个部分的数字,如果只用于相等,或者存储截断的表示,则表示为字符串。


希望这有帮助。

谢谢您的回复。现在至少我知道这是什么原因了。我想我在输入数据时会坚持截断。没什么大不了的。