默认的MVC3 向View中引入命名空间是在Views文件夹下的Web.config中引入,然而这种做法很麻烦,每次新建Areas都要重新引入命名空间,如何避免这种麻烦,实现在根Web.config中引入命名空间即可在整站的View中如入命名空间?
其实很简单,我们只需把Views下面的Web.config中的以下部分放到根Web.config中。
其实很简单,我们只需把Views下面的Web.config中的以下部分放到根Web.config中。
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
当然还有命名空间部分了。
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="Tunynet.UI.ThemedWebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Linq" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
..加入你想要在View中引用的命名空间
</namespaces>
</pages>
</system.web.webPages.razor>OK.
简化MVC3中命名空间引入实现整站View共享命名空间
本文详细介绍了如何在根Web.config中引入命名空间,从而在整站的View中无需重复引入命名空间,显著提高了开发效率。包括将关键配置从Views/Web.config复制到根Web.config,并确保所有View都共享相同的命名空间。

被折叠的 条评论
为什么被折叠?



