【问题标题】:Can the Area and Views folders in ASP.Net MVC inherit data from the root web.config?ASP.Net MVC 中的 Area 和 Views 文件夹可以从根 web.config 继承数据吗?
【发布时间】:2013-06-12 00:33:23
【问题描述】:

在 ASP.Net MVC 应用程序的根目录、views 文件夹和 area 文件夹中有一个 web.config。我已经在我的根 web.config 中声明了一个命名空间,但视图或区域文件夹中的任何视图都不会拾取它,除非我将它添加到该折叠的相应 web.config 文件中。有没有办法启用从根到子文件夹 web.configs 的继承,所以我在根 web.config 中放置的任何设置都可以在 area 和 view 文件夹中看到?

根 Web.Config:

<system.web>
    <httpRuntime targetFramework="4.5" />
    <compilation debug="true" targetFramework="4.5" />

    <customErrors mode="RemoteOnly">
        <error statusCode="404" redirect="~/404.aspx" />
    </customErrors>

    <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" />
            <add namespace="System.Web.Optimization" />
        </namespaces>
    </pages>

    <httpModules>
        <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
        <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
        <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
    </httpModules>
</system.web>

查看文件夹 web.config:

<system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.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" />
        </namespaces>
    </pages>
</system.web.webPages.razor>

【问题讨论】:

  • 你使用什么语法来添加命名空间?
  • 作为 system.web 的子 ^> Pages -> namespaces.

标签: asp.net-mvc-4 web-config


【解决方案1】:

除了 Andrew Barber 给出的代码之外,我还必须添加

    <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>

【讨论】:

    猜你喜欢
    • 2013-09-15
    • 1970-01-01
    • 2021-07-09
    • 1970-01-01
    • 2010-11-08
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    相关资源
    最近更新 更多