My Asp.net 3.5 Веб-приложение Visual Studio 2008 имеет веб-страницу (Admin.aspx) с событием кнопки, выполняющим длительный процесс (30 секунд +), затем запускает UpdatePanel1.Update (), чтобы обновить страницу .. вызывая исключение Invalid Operation.UpdatePanel Update() вызывает ошибку InvalidOperationException
Admin.aspx имеет MasterPage
Admin.aspx (частично) здесь:
<div id="Tabs">
<div class="cen2">
<asp:ScriptManager ID="ScriptManager1" AsyncPostBackTimeOut="360000" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" ChildrenAsTriggers="False" runat="server"
UpdateMode="Conditional" >
<ContentTemplate>
cont....... >
Admin.aspx.cs здесь (частичные) Это срабатывает по событию делегата.
private void port_trdRes(object sender, DataTable dt)
{
dlResSum.DataSource = dt;
dlResSum.DataBind();
try
{
UpdatePanel1.Update();
}
catch (Exception webex)
{
SendErr("Admin.aspx PortTrd Res Exception " + webex.Message.ToString());
}
simtrd.port.trdRes -= new Steury.Trading.TrdSummDelegate(port_trdRes);
}
Когда я получаю UpdatePanel1.Update()
это всегда дает мне
Ошибка:
Первый шанс исключение типа 'System.InvalidOperationException' произошло в System.Web.Extensions .dll
Try Поймайте посылает мне это сообщение .. 'Exception метод Update может быть вызвана только на UpdatePanel с ID UpdatePanel1 перед визуализацией' ... но до сих пор не обновляется. – CraigJSte
@CraigJSte Обновлено сообщение, основанное на вашем комментарии. Похоже, что элемент управления внутри панели обновлений пытается вызвать сервер до того, как он был создан путем частичной обратной передачи. Установка параметра ChildrenAsTriggers в false может исправить это. – rlcrews
по-прежнему выбрасывает это после внесенного в него поправку для ChildTriggers (см. Выше) ..... Admin.aspx PortTrd Res Exception. Метод Update может быть вызван только UpdatePanel с ID UpdatePanel1 перед Render. – CraigJSte