缺少小数点分隔符

Decimal separator missing

当我发布并且 运行 我的应用程序在生产服务器上的小数点分隔符(用于十进制类型数字)正在消失(用于后台计算和显示)。 例如:26,1205 -> 261205

它只发生在远程 Windows Server 2019 Standard 上。这就是我所做的,但它仍然无济于事:

我在 Configure 方法中设置 CultureInfo 用于 Startup.cs 中的应用程序:

var defaultDateCulture = "ru-RU"; //no matter what culture is set here (en, ru, etc), it applied locally but not on production
var ci = new CultureInfo(defaultDateCulture);
app.UseRequestLocalization(new RequestLocalizationOptions
{
    DefaultRequestCulture = new RequestCulture(ci),
    SupportedCultures = new List<CultureInfo> { ci },
    SupportedUICultures = new List<CultureInfo> { ci }
});

我检查了 windows 服务器上的区域设置:

感谢用户mr. Matthew Watson 为我提供了正确的指导。

应用程序执行货币操作的延迟预定后台任务(使用BackgroundService class)。该问题是该线程的实际问题。所以我在执行操作之前明确设置 CultureInfo

protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
    ...
    Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU");
    ...
}