Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET UpdatePanel Time Out

There is a property on the ScriptManager which allows you to set the time-out in seconds. The default value is 90 seconds.

AsyncPostBackTimeout="300"

In my case the ScriptManager object was created in a Master Page file that was then shared with the Content Page files. So to change the ScriptManager.AsyncPostBackTimeout property in the Content Page, I had to access the object in the Content Page's aspx.cs file:

protected void Page_Load(object sender, EventArgs e)
{
     . . . 
     ScriptManager _scriptMan = ScriptManager.GetCurrent(this);
     _scriptMan.AsyncPostBackTimeout = 36000;
}

This did the trick (basically just ignoring all timeouts):

<script type="text/javascript"> 
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function (sender, args) { 
            if (args.get_error() && args.get_error().name === 'Sys.WebForms.PageRequestManagerTimeoutException') { 
                            args.set_errorHandled(true); 
            } 
        }); 
    </script> 

Please follow the steps below:

Step 1: In web.config, set httpRuntime maxRequestLength="1024000" executionTimeout="999999"

Step 2: Add the following setting to your web page's ScriptManager: AsyncPostBackTimeout ="360000"

This will solve your problem.


This might be configurable by changing the ASP script timeout in IIS.

It's located in the properties of your web site, virtual directory, configuration button, then on the options tab.

or set it by setting the Server.ScriptTimeout property.