Myr*_*dor 6 localization asp.net-core-mvc
我正在尝试本地化我的 .Net Core 2.2 MVC 网站,我创建了一个测试项目并复制并粘贴了这些说明:https ://learn.microsoft.com/en-us/aspnet/core/fundamentals/localization?view= aspnetcore-2.2
之后我尝试获取本地化字符串并继续 www.../Info/TestLoc
信息控制器:
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;
}
}
Run Code Online (Sandbox Code Playgroud)
但我收到这个错误:
处理请求时发生未处理的异常。InvalidOperationException:尝试激活“Localization.Controllers.InfoController”时无法解析类型“Microsoft.Extensions.Localization.IStringLocalizer`1[Localization.Controllers.InfoController]”的服务。
现在我用谷歌搜索了该错误,发现当您未分配类型时会发生此错误。我正在这样做。
我现在真的一无所知,因为我只是复制并粘贴了整个微软教程,但它不起作用。
我希望你们能理解我的问题,并希望你们能帮助我。
预先致谢 我非常感谢您花时间阅读本文并帮助我。
问候 Nico 又名 Myridor
nik*_*ovn 10
一个大胆的猜测,因为您从未发布过启动文件,但是您是否复制+粘贴并忘记包含此代码片段?
services.AddLocalization(options => options.ResourcesPath = "your-translations-folder");
Run Code Online (Sandbox Code Playgroud)