控件包含代码块(即 <% ... %>),因此无法修改控件集合异常处理

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Web.HttpException: 控件包含代码块(即 <% ... %>),因此无法修改控件集合。

源错误:

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:

[HttpException (0x80004005): 控件包含代码块(即 <% ... %>),因此无法修改控件集合。]
System.Web.UI.ControlCollection.Add(Control child) +2108047
AjaxControlToolkit.ScriptObjectBuilder.RegisterCssReferences(Control control) +762
AjaxControlToolkit.ExtenderControlBase.OnLoad(EventArgs e) +64
System.Web.UI.Control.LoadRecursive() +47
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Control.LoadRecursive() +131
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1436

“/”应用程序中的服务器错误。

控件包含代码块(即 <% ... %>),因此无法修改控件集合。

搜索下,找到了原因:

在使用主题的时候出现 控件包含代码块(即 <% ... %>),因此无法修改控件集合错误,原来错误的原因是:

控件包含代码块(即 <% ... %>),因此无法修改控件集合。 将这些代码去掉,相应的功能在代码中实现即可。
<%=.....%>
造成这个错误的原因是:在<head runat="server"></head>里面,使用了类似这样的代码,

把Head中使用的<%=.....%>的脚本放到body中,就OK了.

Source:http://www.cnblogs.com/mczhu/archive/2008/08/20/1272063.html

发现了自己的Main.Master中有:

<title>**管理系统</title>
<script src="<%=GetServerUri()%>Scripts/main.js" type="text/javascript" language="javascript"></script>

以上为我从网上转来的,

我因为使用了主题,不可以去掉head 的runat=server,

只好把原来放在head部分的js代码和函数(其中用到<%%>去访问后台变量和资源文件)放到页面其他部位

比如页脚部分处理,就可以了

原文地址:https://www.cnblogs.com/aaa6818162/p/1570939.html