Если вы хотите увеличить время, разрешенное для выполнения сценария ASP.NET, увеличьте Server.ScriptTimeout
значение. По умолчанию 90 секунд для .NET 1.x и 110 секунд для .NET 2.0 и новее.
Например:
Server.ScriptTimeout = 300;
Это значение также можно настроить в вашем web.config
файле в httpRuntime
элементе конфигурации:
<httpRuntime executionTimeout="300"
... other configuration attributes ...
/>
Обратите внимание, согласно документации MSDN :
"Этот тайм-аут применяется только в том случае, если атрибут отладки в элементе компиляции имеет значение False. Следовательно, если атрибут отладки имеет значение True, вам не нужно устанавливать для этого атрибута большое значение, чтобы избежать завершения работы приложения во время отладки. "
Если вы уже сделали это, но обнаружили, что срок вашего сеанса истекает, увеличьте HttpSessionState.Timeout
значение ASP.NET :
Например:
Session.Timeout = 30;
Это значение также можно настроить в вашем web.config
файле в sessionState
элементе конфигурации:
<configuration>
<system.web>
<sessionState
mode="InProc"
cookieless="true"
timeout="30" />
</system.web>
</configuration>
Если выполнение вашего сценария занимает несколько минут и одновременно работает много пользователей, рассмотрите возможность изменения страницы на асинхронную страницу . Это повысит масштабируемость вашего приложения.
Другой альтернативой, если у вас есть доступ администратора к серверу, является рассмотрение этой длительной операции как кандидата для реализации в качестве запланированной задачи или службы Windows.