如何避免在每个页面中使用@using

时间:2012-09-12 16:06:06

标签: asp.net-mvc web-config

我想知道是否有办法避免在每个页面中使用关键字@using导入一些代码。

示例:我想在某些页面中使用@Styles.Render("~/js/jquery-ui"),我不想手动编写@using System.Web.Optimization

我在博客中看到我可以在<page>的{​​{1}}中添加名称空间,但我尝试了这个,但它不起作用。

有什么办法吗?

3 个答案:

答案 0 :(得分:5)

您可以将其添加到~/Views/web.config(非~/web.config)文件的名称空间部分:

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />

        ... add other namespaces that you want to be available in scope
            in all your Razor views
      </namespaces>
    </pages>
  </system.web.webPages.razor>

答案 1 :(得分:2)

将其添加到{em> Views 文件夹中system.web.webPages.razor元素下的web.config。

<system.web.webPages.razor>
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Optimization.Styles" />
    </namespaces>
  </pages>
</system.web.webPages.razor>

答案 2 :(得分:1)

您应该能够在web.config中添加全局命名空间,如here所述。