#dependency-injection #.net-6.0 #asp.net-core-localization
#инъекция зависимости #.net-6.0 #asp.net-ядро-локализация
Вопрос:
app.UseRequestLocalization(app.ApplicationServices.GetRequiredServicelt;IOptionslt;RequestLocalizationOptionsgt;gt;().Value);
Я хочу использовать глобализацию в своем проекте с помощью .net 6. Однако в program.cs
я получаю ошибку
Ошибка CS1061
«Веб-приложение» не содержит определения для «Служб приложений», и не удалось найти доступный метод расширения «Службы приложений», принимающий первый аргумент типа «Веб-приложение» (отсутствует директива using или ссылка на сборку?)
Что я могу сделать?
Комментарии:
1. Ваш
Configure
метод не запускается в контексте запроса (это происходит во время запуска), поэтому нет смысла пытаться получитьIOptionslt;RequestLocalizationOptionsgt;
там. (Но вы, конечно, можете использовать его внутри функции промежуточного программного обеспечения).
Ответ №1:
приложение должно быть приведено в интерфейс, как показано ниже:-
var options = ((IApplicationBuilder)app).ApplicationServices.GetRequiredServicelt;IOptionslt;RequestLocalizationOptionsgt;gt;(); app.UseRequestLocalization(options.Value);