Почему происходит эта ошибка?Дотнет ядро ​​локализация MVC - PullRequest
0 голосов
/ 15 февраля 2019

Я пытаюсь локализовать свой веб-сайт .Net Core 2.2 MVC, и я создал тестовый проект, скопировал и вставил эти инструкции: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization?view=aspnetcore-2.2

После этого я попытался получить локализованную строку и пошел на www... / Info / TestLoc

InfoController:

public class InfoController : Controller
{
    private readonly IStringLocalizer<InfoController> _localizer;
    private readonly IStringLocalizer<SharedResource> _sharedLocalizer;

    public InfoController(IStringLocalizer<InfoController> localizer,
                   IStringLocalizer<SharedResource> sharedLocalizer)
    {
        _localizer = localizer;
        _sharedLocalizer = sharedLocalizer;
    }

    public string TestLoc()
    {
        string msg = "Shared resx: " + _sharedLocalizer["Hello!"] +
                     " Info resx " + _localizer["Hello!"];
        return msg;
    }
}

Но я получаю эту ошибку:

Произошло необработанное исключение при обработке запроса.InvalidOperationException: невозможно разрешить службу для типа «Microsoft.Extensions.Localization.IStringLocalizer`1 [Localization.Controllers.InfoController]» при попытке активировать «Localization.Controllers.InfoController».

Теперь я гуглилоб этой ошибке, и я обнаружил, что эта ошибка возникает, когда вы не назначаете тип.Я делаю это.

Я действительно сейчас ничего не понимаю, потому что я просто скопировал и вставил весь учебник Microsoft, и он не будет работать.

Я надеюсь, что вы, ребята, понимаете мою проблему, и я надеюсь, что вы можете мне помочь.

Заранее спасибо, я очень ценю, что вы нашли время, чтобы прочитать это и помочь мне.

Привет Нико ака Миридор

1 Ответ

0 голосов
/ 15 февраля 2019

Указанная ошибка показывает, что внедрение не произошло, т. Е. Ядро .net не смогло внедрить службу, поскольку не имело соответствующей реализации.Что может произойти, если вы не скопировали изменения файла startup.cs.(Если вы копировали файлы вручную)

...