asp.net – executionTimeout和Server.ScriptTimeout之间的区别

前端之家收集整理的这篇文章主要介绍了asp.net – executionTimeout和Server.ScriptTimeout之间的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个aspx页面,其中包含可能需要5分钟或更长时间才能在服务器上执行的代码.所以我需要延长请求超时的时间.

把它放在网站的web.config中有什么区别?

<location path="~/MyPage.aspx">
    <system.web>
      <httpRuntime executionTimeout="600"/>      
    </system.web>    
  </location>

并将其放在页面中的代码中:

protected void Page_Load(object sender,EventArgs e)
{
Page.Server.ScriptTimeout = 600;
}

解决方法

至于ASP.NET的< httpRuntime>的executionTimeout设置
配置不起作用.关于这个属性的文档真的不是很清楚.问题是由以下原因造成的:

>只有当我们将“debug”设置为false时,此设置才会生效
web.config,像:

当设置为“debug = true”模式时,运行时将忽略超时设置.

>即使我们设置了debug =“false”,executionTimeout仍然会有一些
当值非常小时延迟.事实上,我们建议不要
设置超时不到1.5分钟.当我们将超时设置为较少时
超过1分钟,延迟时间将从5秒到15秒.例如,
如果我们设置executionTimeout =“5”,页面可能需要15秒钟
暂停

Server.ScriptTimeout属性是一个COM接口,用于经典ASP. ASP.NET的executionTimeout是在asp.net中替换ScriptTimeout,所以我们不再需要在asp.net中使用ScriptTimeout.

另外,至于
脚本总是在2秒后终止

我恐怕asp.net的运行时设置是没有办法的
asp.net的运行时请求处理管理无法达到这个级别
精度,2秒是一个太小的值,这可能会使性能
非常池监视这么小的间隔.如果我们确实需要让一个
某些处理超时,我们可以考虑把超时逻辑放在
以上应用程式代码级别.例如,如果我们执行sqlCommand,
我们可以设置sqlcommand的执行超时.或者如果我们正在执行
异步调用页面代码,我们可以为异步调用设置超时

希望有帮助.

原文链接:https://www.f2er.com/aspnet/250772.html

猜你在找的asp.Net相关文章