如何在web.config上的Resources文件夹中添加命名空间?

时间:2018-01-29 23:19:31

标签: asp.net-mvc

我创建了一个新文件夹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>

1 个答案:

答案 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>