报错:”The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>)."
原因解析:
一、可能是在.aspx或.ascx的如果包括<%= %>,并在.aspx, .ascs中使用了AjaxToolkit中的控件,那么很可能会引发"The Controls collection cannot be modified because the control contains code blocks" 异常,
解决办法如下
1. 将<%= 换为<%#
2. 在.asp或模板页中的Page_Load事件中添加如下代码
复制代码代码如下:
Page.Header.DataBind();
二、可能是在.aspx文件中有runat="server" 的控件被 .aspx.cs文件中执行了InnerHTML方法或InnerTEXT方法赋值导致的,如:
//default.aspx文件中有如下代码: <div runat="server" id="divContent"> <%for(int i=0;i<10;i++){%>输出序号<%=i%><br/><%}%> </div> //而在对应的default.aspx.cs文件中执行如下代码: divContent.innerHTML="no data"; //则会报出以上错误,原因在于有所冲突。