我有非常简单的代码
Decimal Value=34.23m;
Decimal spent;
spent = Math.Round((Convert.ToDecimal(Value)), 2);
Spent = 34.23
它适用于 en-GB 文化
如果我的文化被定义为“tr-TR”,那么它无法像上面那样转换,它显示为 3423。
不知道为什么会导致这种差异。
代码:
protected override void InitializeCulture()
{
string culture = ConfigurationManager.AppSettings["CultureDefaultloc"];
// string culture = "zh-CN";
if (!string.IsNullOrEmpty(culture))
{
System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentCulture = ci;
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
base.InitializeCulture();
}
}
<add key="CultureDefaultloc" value="tr-TR"/>