您的位置:首页 > 编程语言 > ASP

ASP.NET页面请求超时时间设置多种方法

2016-09-28 00:00 801 查看

ASP.NET

页面请求超时时间(页面后台程序执行时间)默认值为110秒(在 .NET Framework 1.0 版和 1.1 版中,默认值为 90 秒)

即:

Server.ScriptTimeout = 110(HttpServerUtility.ScriptTimeout = 110)

System.Web.Configuration.HttpRuntimeSection().ExecutionTimeout.ToString() =00:01:50(110 秒)

方法一:设置 Server.ScriptTimeout 的值

注意:设置的值必须大于90,否则不会生效,请求超时值依然是90秒 (网上流传的说法,经验证错误!!!)

只有当compilation元素中的调试属性为False时,此超时属性才适用(true:ScriptTimeOut=30000000)。若要避免在调试期间关闭应用程序,请不要将此超时属性设置为较大值。

<span style="font-family: 'Microsoft YaHei';">//单位秒

Server.ScriptTimeout = 60;</span>

方法二:Web.config 配置httpRuntime executionTimeout (单位秒)

注意:只有当compilation元素中的调试属性为False时,此超时属性才适用(true:ScriptTimeOut=30000000)。若要避免在调试期间关闭应用程序,请不要将此超时属性设置为较大值。

httpRuntime executionTimeout的设置可修改Server.ScriptTimeout的值,使用ScriptTimeout属性以编程方式对超时值进行的设置优先于Web.config设置。

<span style="font-family: 'Microsoft YaHei';"><system.web>
<compilation debug="false" targetFramework="4.0" />
<!-- 设置为600秒 Server.ScriptTimeout = 600 -->
<httpRuntime executionTimeout="600"/>
</system.web></span>


方法三:设置HttpRuntimeSection.ExecutionTimeout 的值 (经测试,无效!!!不知如何使用!)https://msdn.microsoft.com/zh-cn/library/system.web.configuration.httpruntimesection.executiontimeout(VS.80).aspx

System.Web.Configuration.HttpRuntimeSection configSection = new System.Web.Configuration.HttpRuntimeSection();

configSection.ExecutionTimeout = TimeSpan.FromSeconds(100);


方法四:IIS配置 修改 脚本超时 值





这个未确定 网站→高级设置:



一样未确定 应用程序池→高级设置:



注意:如果页面使用了 UpdatePanel,UpdatePanel 内部的请求分以下两种情况:
①设置的超时值 >=90秒,UpdatePanel 内部的请求超时值将变为 90 秒!
② 设置的超时值 <90秒,UpdatePanel 内部的请求超时值将变为 所设置的值!
下图Server.ScriptTimeout= 5 秒,点击UpdatePanel 内部的按钮,Thread.Sleep(20 * 1000) 秒,请求超时,但是页面看不到报错信息!
而点击UpdatePanel 外部的按钮,则会报如图1的 “请求超时”的错误信息!



下图Server.ScriptTimeout= 100 秒,点击UpdatePanel 内部的按钮,Thread.Sleep(95 * 1000)//停止95秒; 实际上到90秒就超时了(如下面第二图)而点击UpdatePanel 外部的按钮,Thread.Sleep(95 * 1000)//停止95秒 ,请求成功!





=======================================================================================================================全局超时时间

服务器上如果有多个网站,希望统一设置一下超时时间,则需要设置 Machine.config 文件中的 ExecutionTimeout 属性值。Machine.config 文件位于%SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\目录中。

<httpRuntime executionTimeout="600" />

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

设置ASP.NET页面的运行超时时间详细到单个页面及站点
登录超时给出提示跳到登录页面(ajax、导入、导出)
php设置页面超时时间解决方法
JS实现页面超时后自动跳转到登陆页面
php页面函数设置超时限制的方法
ajax提交session超时跳转页面使用全局的方法来处理
.net让线程支持超时的方法实例和线程在执行结束后销毁的方法
Asp.Net各种超时问题总结
Asp中Server.ScriptTimeOut属性需要注意的一点分析
超过了脚本运行的最长时间..Server.ScriptTimeOut 属性指定新值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息