这个问题的解决方法是修改应用程序的 CultureInfo 设置,以允许阿拉伯数字作为零进行传递。
在 ConfigureServices 方法中添加以下代码:
services.Configure(options =>
{
options.DefaultRequestCulture = new RequestCulture("en-US");
options.SupportedCultures = new List { new CultureInfo("en-US"), new CultureInfo("ar-SA") };
options.SupportedUICultures = new List { new CultureInfo("en-US"), new CultureInfo("ar-SA") };
options.RequestCultureProviders = new List { new CookieRequestCultureProvider() };
});
在 Controller 中的 Post 方法中添加以下代码:
[HttpPost]
public IActionResult Post(string amount)
{
var result = Decimal.Parse(amount, CultureInfo.InvariantCulture);
return Json(result);
}
最后,在视图中确保将 culture 参数传递为阿拉伯语:
Post 0