Asp.net mvc 3 如何防止MVC 4子应用程序继承父应用程序(Umbraco MVC3)web.config

Asp.net mvc 3 如何防止MVC 4子应用程序继承父应用程序(Umbraco MVC3)web.config,asp.net-mvc-3,asp.net-mvc-4,web-config,umbraco,Asp.net Mvc 3,Asp.net Mvc 4,Web Config,Umbraco,我在服务器上部署了Umbraco。目前,我正在尝试将MVC 4应用程序部署为子应用程序,但子应用程序的views\web.config从Umbraco的web.config继承了configSections和sectionGroup。这将导致以下错误 节或组名“system.web.webPages.razor”已定义。对此的更新只能在定义它的配置级别进行 翁布拉科分区组 <sectionGroup name="system.web.webPages.razor" type="System

我在服务器上部署了Umbraco。目前,我正在尝试将MVC 4应用程序部署为子应用程序,但子应用程序的views\web.config从Umbraco的web.config继承了configSections和sectionGroup。这将导致以下错误

节或组名“system.web.webPages.razor”已定义。对此的更新只能在定义它的配置级别进行

翁布拉科分区组

<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
  <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
<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>

子应用程序(MVC4)分区组

<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
  <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
<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>


如何防止这种情况发生?

您有几种选择。允许继承并从子配置中删除sectionGroup,或在任何父配置中执行类似操作:

<location path="." inheritInChildApplications="false">
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</location>

Intellisense可能会对此抱怨,但它应该编译并运行良好


这个问题也可能很有价值:

你有几个选择。允许继承并从子配置中删除sectionGroup,或在任何父配置中执行类似操作:

<location path="." inheritInChildApplications="false">
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</location>

Intellisense可能会对此抱怨,但它应该编译并运行良好


这个问题可能也很有价值:

我也有同样的问题。我通过向我的子应用程序添加razor的程序集重定向来解决此问题,如下所示:

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
   <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31BF3856AD364E35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
  </dependentAssembly>
 </assemblyBinding>
</runtime>

我也有同样的问题。我通过向我的子应用程序添加razor的程序集重定向来解决此问题,如下所示:

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
   <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31BF3856AD364E35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
  </dependentAssembly>
 </assemblyBinding>
</runtime>


视图文件夹的web.config可能是从子应用的web.config继承的。如果没有,请签出this()或this()@dereli当节不同但不适用于sectionGroup时,它可以工作。无论如何,我们现在已经在mvc3中创建了这个应用程序,它工作得很好。虽然这不是解决方案,但解决了我的问题。可能视图文件夹的web.config是从子应用的web.config继承的。如果没有,请签出this()或this()@dereli当节不同但不适用于sectionGroup时,它可以工作。无论如何,我们现在已经在mvc3中创建了这个应用程序,它工作得很好。虽然这不是一个解决方案,但它是我问题的一个解决办法。你帮了我很多…我一直在寻找答案,从很长一段时间以来…希望我能给你更多的分数…我有运行时绑定的其他位不是System.Web.WebPages.Razor,我想这就是问题所在。无论如何,非常感谢最新版本:使用最新版本号:3例如:(看看你的错误消息)你帮了我很多…我很久以来一直在寻找这个问题的答案…希望我能给你更多的分数…我有其他一些的运行时绑定,而不是System.Web.WebPages.Razor,我想这就是问题所在。无论如何,非常感谢最新版本:使用最新版本号:3例如:(查看您的错误消息)抱歉,Matt,但它不起作用。当涉及到sectionGroup时,位置不起作用。在msdn中发现无法阻止在sectionGroup中继承。也许你应该看看对我有用的答案。谢谢你,马特教授,但它不起作用。当涉及到sectionGroup时,位置不起作用。在msdn中发现无法阻止在sectionGroup中继承。也许你应该看看对我有用的答案。谢谢你