我在所有网页上使用Razor。在我的全球web.config中,我有以下内容:
<system.web>
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
</namespaces>
</pages>
</system.web>
在我的本地(查看)web.configs中我有:
<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="MyApp.WebUx.Helpers" />
<add namespace="MyApp.Storage.Models" />
</namespaces>
</pages>
</system.web.webPages.razor>
我想让事情变得尽可能高效和干净,所以我需要拥有第一部分还是剃刀部分?
答案 0 :(得分:0)
如果您在这些程序集的视图中使用任何类,则需要这些名称空间。对于页面基本类型为System.Web.Mvc.WebViewPage
的每个视图,本质上是全局包含/使用语句。
如果删除它们,则需要手动导入程序集命名空间。请参阅this post了解具体方法。