如何在我的子应用程序的web.config中“清除”供应商定义的<controls>
?
Parent Web Config。
<system.web>
<pages>
<controls>
<!-- START: Vendor Custom Control -->
<add tagPrefix="asp" namespace="VENDOR.Web.UI.Base" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral />
...
<!-- END: Vendor Custom Control -->
...
</controls>
<tagMapping>
<add tagType="System.Web.UI.WebControls.WebParts.WebPartManager" mappedTagType="Microsoft.Web.Preview.UI.Controls.WebParts.WebPartManager" />
<add tagType="System.Web.UI.WebControls.WebParts.WebPartZone" mappedTagType="Microsoft.Web.Preview.UI.Controls.WebParts.WebPartZone" />
</tagMapping>
</pages>
</system.web>
孩子:
<system.web>
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</controls>
<tagMapping>
<clear/>
</tagMapping>
</pages>
</system.web>
我让它适用于<tagMapping>
部分,但<controls>
不支持<clear/>
。
答案 0 :(得分:2)
stopping web.config inheritence有一种鲜为人知的方式。在您的情况下,您会在<location inheritInChildApplications="false">...</location>
元素周围粘贴<system.web>...</system.web>
。当然这会删除部分中所有内容的继承,但如果你正在寻找它,它将解决你的继承问题。
答案 1 :(得分:0)
为每个tagprefix尝试<remove/>
,可能与顶部的<clear/>
一起使用