我想增加请求超时用于我的应用程序特定的控制器的动作。我知道我可以在web.config中为整个应用程序做到这一点,但我宁愿改就只是这一个动作。

的Web.config示例:

<system.web>
  <httpRuntime executionTimeout="1000" /> 
</system.web>

我该怎么办呢?

有帮助吗?

解决方案

可以在控制器编程方式设置此: -

HttpContext.Current.Server.ScriptTimeout = 300;

设定的超时至5分钟,而不是默认110秒(什么奇数默认?)

其他提示

<location path="ControllerName/ActionName">
    <system.web>
        <httpRuntime executionTimeout="1000"/>
    </system.web>
</location>

也许最好是在web.config中,而不是控制器来设置这样的值。的可配置选项硬编码被认为是有害的。

我不得不添加 “当前” 使用.NET 4.5:

HttpContext.Current.Server.ScriptTimeout = 300;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top