猿问

ASP.NET MVC 视图:当前上下文中不存在名称“inject”

我正在尝试将本地化添加到我的 ASP.NET MVC 应用程序中。但是,我已经无法包含必要的软件包。我相当肯定我的应用程序正在使用 Views,而且我大约 50% 确定它正在使用 Razor 页面。至少 Razor 页面语法有效,但在这种情况下除外。


我正在关注这个 Microsoft 官方教程和这个. 两者似乎都使用了与我正在使用的代码相同的代码。不过,我可能错过了一个重要的包裹。


这是我的一部分_Layout.cshtml。


@using Microsoft.AspNetCore.Mvc.Localization

@using System.Threading.Tasks


@inject IViewLocalizer Localizer


<!DOCTYPE html>

前两@using行完美无缺。第四行抛出错误,页面在浏览器中显示错误。


CS0103: The name 'inject' does not exist in the current context


萧十郎
浏览 362回答 1
1回答

临摹微笑

所以事实证明我错过了 .NET Core 开发环境。您可以通过 Visual Studio 安装程序安装它。运行 Visual Studio 安装程序单击“更改”以更改现有的 Visual Studio 安装添加 .NET Core 扩展单击“更改”以应用您的更改您的扩展程序应该会自动下载。请注意,这不一定会将您现有的 ASP.NET 应用程序转变为核心应用程序。常规的旧 AST.NET MVC 本地化似乎很容易。(存档链接以防万一)添加 .resx 文件在您的视图中引用该文件及其资源,如下所示:@Resources.<Name of your file>.<Name of the resource line>例子:<h3>@Resources.Global.AppName</h3>
随时随地看视频慕课网APP
我要回答