我写了一些扩展方法(HTML助手),希望在多个视图中使用它们,这...
@using My.Extensions.Namespace
@Html.MyExtension()
显然这个方法是可行的。但它意味着在每个视图中都要包含using
语句(将有很多个视图)。
如果这是唯一的方法,那就没问题了,但我想知道是否有一种方法可以在不在每个单独的视图中声明它的情况下“全局”地使用这个命名空间。
我写了一些扩展方法(HTML助手),希望在多个视图中使用它们,这...
@using My.Extensions.Namespace
@Html.MyExtension()
显然这个方法是可行的。但它意味着在每个视图中都要包含using
语句(将有很多个视图)。
如果这是唯一的方法,那就没问题了,但我想知道是否有一种方法可以在不在每个单独的视图中声明它的情况下“全局”地使用这个命名空间。
您可以通过Views
文件夹内的webconfig
文件来包含它:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
...
<add namespace="My.Extensions.Namespace"/>
</namespaces>
</pages>
</system.web.webPages.razor>
在Razor视图中,我们需要引用的每个命名空间都需要使用这种方式或通过@using
语句在视图本身中声明。