如何在Asp.Net MVC 3中的所有视图中实现@using?

nas*_*ski 11 asp.net-mvc namespaces razor asp.net-mvc-3

我想做的就是包括:

@using MyProject.WebUI.Properties
Run Code Online (Sandbox Code Playgroud)

在我的所有视图中,无需在每个视图中键入它,有没有办法在ViewStart或Web.Config中执行此操作?谢谢.

amu*_*rra 33

将名称空间添加到namespaces元素下的views 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 namespace="MyProject.WebUI.Properties" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>
Run Code Online (Sandbox Code Playgroud)

请注意,您可能必须关闭并重新打开要进行智能感知的视图文件才能使这些更改生效.

  • @napspinksi确保您要更新的web.config是Views文件夹中的那个 (9认同)
  • @amurra(和naspinki)我不得不关闭视图文件,然后重新打开它以获取intellisense以获取新的命名空间.(Visual Studio 2010) (4认同)