Невозможно установить по умолчанию и только культуру в приложении ASP.Net Core

Я работаю над польской операционной системой:

В моем Statup.csclass у меня есть следующий код

        // Configure the localization options
        var supportedCultures = new[]
        {
            new CultureInfo("en-GB")
        };

        app.UseRequestLocalization(
            new RequestLocalizationOptions
            {
                DefaultRequestCulture = new RequestCulture("en-GB"),
                SupportedCultures = supportedCultures,
                SupportedUICultures = supportedCultures,
                FallBackToParentCultures = true,
                FallBackToParentUICultures = true,
                RequestCultureProviders = null
            });

Полные параметры предназначены только для справки, чтобы убедиться, что ничего не задано. В моем _Layout.cshtml есть следующий код:

<div>Current Culture: @CultureInfo.CurrentCulture.DisplayName</div>
<div>Current UI Culture: @CultureInfo.CurrentUICulture.DisplayName</div>

Единственная поддерживаемая и доступная культура должна быть en-GB, однако на веб-сайте всегда отображается:

Current Culture: Polski (Polska)
Current UI Culture: Polski (Polska)

Я пробовал добавить Microsoft.AspNet.Localization пакет, но без разницы. На основе кода в промежуточном программном обеспечении локализации все должно работать должным образом. Я использую последнюю версию ASP.NET Core 1.0.0.


person Marcin    schedule 21.07.2016    source источник
comment
Я пытался воспроизвести вашу проблему, но безуспешно. В немецкой системе представление прекрасно отображало британскую культуру. У вас есть большое приложение, в котором другие сегменты кода могут напрямую устанавливать текущую культуру?   -  person Ralf Bönning    schedule 21.07.2016
comment
@rboe Я только что сделал дополнительный тест. И есть одна важная вещь. UseRequestLocalization должен быть до UseMvc, иначе он не работает.   -  person Marcin    schedule 21.07.2016


Ответы (1)


Есть одна важная вещь, не упомянутая в документации. UseRequestLocalization должен быть помещен перед UseMvc, мой был ниже.

person Marcin    schedule 21.07.2016
comment
У меня точно такая же ситуация, UseRequestLocalization нужно разместить перед UseMvc, но это не работает. Как я могу решить это по-другому? - person Yurii N.; 15.05.2017
comment
@YuriyN. какие у вас культуры? Вы установили культуру по умолчанию или поддерживаемые культуры? - person Marcin; 16.05.2017
comment
У меня есть культура Великобритании и en, и я установил uk как культуру по умолчанию. - person Yurii N.; 17.05.2017
comment
Юрий как ты это решил? я столкнулся с той же проблемой - person Sajeetharan; 21.03.2018