2

我有一个 ASP.NET 页面,其中有几个在代码旁装饰的静态方法[WebMethod],而这些方法又是使用PageMethods.MyMethodName(myParameter, myOnCompleteHandler, myOnErrorHander);.

其中一种方法被多次调用,由于调用量大,运行时间可能很长。目前,该方法运行正常,但需要超过 5 分钟才能完成的调用会超时。我想将该跨度增加到 10 分钟。

我努力了:

  • ScriptManager.AsyncPostBackTimeout = 600;
  • Server.ScriptTimeout = 600;
  • this.Page.AsyncTimeout = new TimeSpan(0,10,0);
  • Sys.Net.WebRequestManager.set_defaultTimeout(600000);在javascript中
4

2 回答 2

2

将以下行添加到您的 web.config 的 system.web 部分。

<httpRuntime executionTimeout="3600" maxRequestLength="2147483647" />

迟到的反应,但也许这会帮助下一个人。

于 2011-12-16T21:18:05.240 回答
1

正确答案在这里,因为 AJAX 超时由脚本管理器控制,而不是 http 执行超时。

您需要获取脚本管理器控件(在代码或标记中)并将 AsyncPostBackTimeout 属性设置为您希望的合适值。

AsyncPostBackTimeout="300"
于 2016-12-27T06:20:50.913 回答