我创建了一个新文件夹Resources
,我在其中添加了Languages.resx
来创建多语言应用程序。现在我正在尝试使用标记<pages>
将namespaces
添加到此文件夹,但它不起作用。我正在尝试创建它以避免在每个视图中使用@using MyProject.Resources
,但我无法使其有效。
我怎么能这样做?
的Web.config
<system.web>
<!--<globalization/>-->
<globalization enableClientBasedCulture="true" uiCulture="auto" culture="auto"/>
<!--languages-->
<pages>
<namespaces>
<add namespace="MyProject"/>
<add namespace="MyProject.Resources"/>
</namespaces>
</pages>
<!--redireciona caso a sessao tenha expirado ou o usuario nao esteja autenticado-->
<authentication mode="Forms">
<forms defaultUrl="~/Home/Index" loginUrl="~/Home/Index" slidingExpiration="true" timeout="60" />
</authentication>
<!-- ativa o custom errors
<customErrors mode="On" defaultRedirect="~/ErrorPage/NotFound">
<error statusCode="404" redirect="~/ErrorPage/NotFound"/>
</customErrors> -->
<compilation debug="true" targetFramework="4.5.2" />
<httpRuntime targetFramework="4.5.2" />
</system.web>
尝试使用
HTML
<h1>@Language.Name</h1>
答案 0 :(得分:1)
namespace
需要添加到您应用的web.congfig
文件夹中的/Views
文件中(位于<system.web.webPages.razor>
部分)
<configuration>
....
<system.web.webPages.razor>
....
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
....
<add namespace="MyProject"/>
<add namespace="MyProject.Resources"/>
</namespaces>
</pages>
</system.web.webPages.razor>