我们有一个ASP.net网页应用程序,其中有几个页面偶尔会在页面加载时超时(通常,这些都是管理员类型的页面,通过处理进行错误上传/下载。)

其中一个解决方案是将Session.Timeout和Server.ScriptTimeout提升到非常大的数字 - 这很好。但是,这里有很多关于每个设置何时适用的讨论。说得客气一点,MSDN页面可以解释。

任何人都可以向读者提供差异所在的摘要版本,还是指向我们找不到的MSDN页面?

谢谢,所有。

(II6上的net 2.0,如果重要的话。)

作为奖励后续问题,更改这些设置,例如,某个页面的on_load()函数是否会为整个应用更改它们,还是只更改该页面?

编辑:哎呀!我的意思是“Session.Timeout”不是“Server.Timeout。”

有帮助吗?

解决方案

ScriptTimeout是ASP.NET运行时等待ASPX页面结果所花费的秒数。

Session.Timeout是ASP.NET将等待所花费的分钟数。

其他提示

脚本超时控制代码可以运行多长时间来处理请求,因此您可以更改为允许长时间运行的代码。 IIS管理器中的设置用于每个请求,Server.ScriptTimeout属性用于当前请求,因此如果可能,您应该在代码中设置它,以便所有常规页面使用正常的脚本超时。

会话超时是用户上次发出请求后服务器上的会话对象存活的时间。 IIS管理器中的会话超时设置是创建的任何新会话的默认设置,您从代码访问的Session.Timeout属性是该特定会话的超时。默认的会话超时是20分钟,你可以稍微提高它,没有任何很大的风险,但是你仍然应该把它保持在一个合理的值内,这样你就不会有会话对象在内存中连续几天。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top