在 NopCommerce 中发帖时浏览器添加零
Browser adds zeroes when posting in NopCommerce
在 NopCommerce 产品编辑中更新价格时,点后面的零被添加到数字中。
例如440.0000 变成 4400000
价格以小数形式存储。客户端计算机上使用的语言是丹麦语,通常使用“,”作为小数点分隔符。在编辑网页点“。”用作小数点分隔符,不接受“,”。通过谷歌搜索,我发现其他丹麦人也遇到了同样的问题。
这 可以确定问题并可能提供解决方案。谁能告诉我如何在 NopCommerce 中实现它?
尽管它是 "open source",但不能对 NopCommerce 源代码进行任何更改,因为我正在尝试修复遗留系统。
Chrome 和 Firefox 都会出现这个问题。
根据您使用的 nopCommerce 版本查看
Global.asax.cs - SetWorkingCulture()
if (webHelper.GetThisPageUrl(false).StartsWith(string.Format("{0}admin", webHelper.GetStoreLocation()),
StringComparison.InvariantCultureIgnoreCase))
{
//admin area
//always set culture to 'en-US'
//we set culture of admin area to 'en-US' because current implementation of Telerik grid
//doesn't work well in other cultures
//e.g., editing decimal value in russian culture
CommonHelper.SetTelerikCulture();
}
ComonHelper.cs - SetTelerikCulture()
public static void SetTelerikCulture()
{
//little hack here
//always set culture to 'en-US' (Kendo UI has a bug related to editing decimal values in other cultures). Like currently it's done for admin area in Global.asax.cs
var culture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;
}
以上代码块代表 nopCommerce 3.90。
It is not an option to make any change in the NopCommerce source code, despite it's "open source", because I am trying to fix a legacy system.
由于不想更改nopCommerce源代码,只能使用en-US culture的nop Admin。
编辑
您可以尝试的一件事是添加 telerik 提供的一种文化脚本。参见 ~/Scripts/kendo/2014.1.318/cultures/...
尽管这需要对视图(源代码)进行微小的更改
这个回答只是为了结束这个问题。感谢拉斐尔的回答。
解决问题的唯一方法是设置工作文化并进行重新编译,如问题中所述,这不是一种选择。因为不知道遗留编译有没有自定义改动。
在 NopCommerce 产品编辑中更新价格时,点后面的零被添加到数字中。
例如440.0000 变成 4400000
价格以小数形式存储。客户端计算机上使用的语言是丹麦语,通常使用“,”作为小数点分隔符。在编辑网页点“。”用作小数点分隔符,不接受“,”。通过谷歌搜索,我发现其他丹麦人也遇到了同样的问题。
这
尽管它是 "open source",但不能对 NopCommerce 源代码进行任何更改,因为我正在尝试修复遗留系统。
Chrome 和 Firefox 都会出现这个问题。
根据您使用的 nopCommerce 版本查看
Global.asax.cs - SetWorkingCulture()
if (webHelper.GetThisPageUrl(false).StartsWith(string.Format("{0}admin", webHelper.GetStoreLocation()),
StringComparison.InvariantCultureIgnoreCase))
{
//admin area
//always set culture to 'en-US'
//we set culture of admin area to 'en-US' because current implementation of Telerik grid
//doesn't work well in other cultures
//e.g., editing decimal value in russian culture
CommonHelper.SetTelerikCulture();
}
ComonHelper.cs - SetTelerikCulture()
public static void SetTelerikCulture()
{
//little hack here
//always set culture to 'en-US' (Kendo UI has a bug related to editing decimal values in other cultures). Like currently it's done for admin area in Global.asax.cs
var culture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;
}
以上代码块代表 nopCommerce 3.90。
It is not an option to make any change in the NopCommerce source code, despite it's "open source", because I am trying to fix a legacy system.
由于不想更改nopCommerce源代码,只能使用en-US culture的nop Admin。
编辑
您可以尝试的一件事是添加 telerik 提供的一种文化脚本。参见 ~/Scripts/kendo/2014.1.318/cultures/...
尽管这需要对视图(源代码)进行微小的更改
这个回答只是为了结束这个问题。感谢拉斐尔的回答。
解决问题的唯一方法是设置工作文化并进行重新编译,如问题中所述,这不是一种选择。因为不知道遗留编译有没有自定义改动。