Я добавил файл ресурсов в свое решение.
Я добавил тестовую строку в этот файл ресурсов.
Сейчас я пытаюсь получить доступ к этой тестовой строке/ключу в моем контроллере.
Итак, в моем файле start.cs у меня есть это:
Код: Выделить всё
public void ConfigureServices(IServiceCollection services)
{
services.AddLocalization(opts => { opts.ResourcesPath = "Resources"; });
services.AddMvc()
.AddViewLocalization(
LanguageViewLocationExpanderFormat.Suffix,
opts => { opts.ResourcesPath = "Resources"; })
.AddDataAnnotationsLocalization();
services.Configure(
opts =>
{
var supportedCultures = new List
{
new CultureInfo("en-GB"),
new CultureInfo("en-US"),
new CultureInfo("en"),
new CultureInfo("fr-FR"),
new CultureInfo("fr"),
};
opts.DefaultRequestCulture = new RequestCulture("en");
// Formatting numbers, dates, etc.
opts.SupportedCultures = supportedCultures;
// UI strings that we have localized.
opts.SupportedUICultures = supportedCultures;
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, WorkerContext context)
{
app.UseStaticFiles();
var options = app.ApplicationServices.GetService();
app.UseRequestLocalization(options.Value);
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
Код: Выделить всё
public class HomeController : Controller
{
private readonly IStringLocalizer _localizer;
public HomeController(IStringLocalizer localizer)
{
_localizer = localizer;
}
}

Мои свойства для этого файла ресурсов:

Здесь я установил точку останова:
_localizer = localizer;
Я проверяю эту переменную и, как видите, манифест не найден...

Что я не понимаю, пожалуйста?
Подробнее здесь: https://stackoverflow.com/questions/443 ... nt-culture
Мобильная версия