我的应用程序发生了一些奇怪的事情。当我在本地运行它时,我得到的结果应该是正常的十进制数。但是当我从服务器运行相同的应用程序时,十进制数除以100。 我使用相同的代码,部署相同的应用程序,我想知道为什么会发生这种情况。 欢迎提出建议。在此先感谢Laziale
答案 0 :(得分:3)
显然,您的服务器运行的是其他语言环境。
无论何时从字符串转到十进制,语言环境(CultureInfo)都很重要。
例如,ConvertToDecimal("1.00")
可以提供1
或100
,具体取决于.
是设置为小数点分隔符还是千位分隔符。
为防止这种情况发生,请始终使用ConvertToDecimal("1.00", someCulturInfo)
。
根据用户区域设置中的字符串,您只能依赖默认值。