3

我的应用程序发生了一些奇怪的事情。当我在本地运行它时,我得到的结果应该是正常的十进制数。但是当我从服务器运行相同的应用程序时,十进制数除以 100。我使用相同的代码,部署相同的应用程序,我想知道为什么会这样。欢迎任何建议。提前致谢, Laziale

4

1 回答 1

3

显然,您的服务器正在使用不同的语言环境运行。

每当您从字符串转换为十进制时,语言环境 (CultureInfo) 都很重要。

例如,ConvertToDecimal("1.00")可以给出1100取决于.是设置为小数分隔符还是千位分隔符。

为防止这种情况,请始终使用ConvertToDecimal("1.00", someCulturInfo).

当字符串在用户语言环境中定义时,您只能依赖默认值。

于 2012-04-13T14:22:22.707 回答