1

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

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

我在博客中看到可以在<page>in 中添加命名空间web.config,但是我尝试了这个但它不起作用。

有什么办法吗?

4

3 回答 3

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>
于 2012-09-12T16:07:02.447 回答
2

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

<system.web.webPages.razor>
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Optimization.Styles" />
    </namespaces>
  </pages>
</system.web.webPages.razor>
于 2012-09-12T16:07:11.657 回答
1

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

于 2012-09-12T16:08:19.457 回答