Отсутствует десятичный разделитель - PullRequest
2 голосов
/ 07 января 2020

Когда я публикую sh и запускаю мое приложение на рабочем сервере, десятичный разделитель (для чисел десятичного типа) исчезает (для фоновых вычислений и для отображения). Например: 26,1205 -> 261205

Это происходит только на удаленном Windows Server 2019 Standard. Это то, что я сделал, но это все равно не помогает:

Я установил CultureInfo для приложения в Startup.cs в Configure Метод:

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 сервер: enter image description here

1 Ответ

3 голосов
/ 07 января 2020

Спасибо пользователю mr. Мэтью Уотсон за правильное руководство.

Приложение выполняет отложенную запланированную фоновую задачу для валютных операций (используя класс BackgroundService). Проблема была актуальна для этой темы. Поэтому я явно установил CultureInfo прямо перед выполнением операций.

protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
    ...
    Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU");
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...