是否可以增加单个ASP.net页面的超时时间?我知道在服务器级别上是可能的,但在页面级别上是否可能?
我需要为一个需要2-3分钟加载的单独报告页面实现此功能。
有什么想法吗?
我认为你正在寻找的是 ScriptTimeout
。你可以像这样在页面中设置它:
Page.Server.ScriptTimeout = 60;
超时时间以秒为单位。
此外,请注意,如果您正在调试模式下运行,则会忽略此设置并将超时设置为最大值。但我认为这对您不是问题,因为您正在增加超时时间,而不是减少它。
maxRequestLength
以返回大文件。它在Web.config
中,system.web
部分,紧挨着默认的ScriptTimeout:<httpRuntime executionTimeout="43200" maxRequestLength="104856" />
。 - AndomarExecutionTimeout
取代了它,但似乎不能在页面级别上设置后者,因此这似乎是一种遗留下来的技巧?(也可参考这里) - PeterXconfigSection
: <location path="~/MyPage.aspx">
<system.web>
<httpRuntime executionTimeout="600"/>
</system.web>
</location>
maxRequestLength="204800"
或其他部分,如: <location path="~/MyPage.aspx">
<system.web>
<httpRuntime executionTimeout="6000" maxRequestLength="204800" />
</system.web>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="209715200" />
</requestFiltering>
</security>
</system.webServer>
</location>
command.CommandTimeout = 100;
,例如:using (var connection = new SqlConnection(connectionString))
{
connection.Open();
SqlCommand command = new SqlCommand(queryString, connection);
// Setting command timeout to 100 seconds
command.CommandTimeout = 100;
command.ExecuteNonQuery();
}