Wie kann ich für eine Controller-Aktion in einer asp.net Mvc-Anwendung die Anforderung Timeout

StackOverflow https://stackoverflow.com/questions/579523

  •  06-09-2019
  •  | 
  •  

Frage

Ich mag die Anforderung Timeout für eine bestimmte Controller-Aktion in meiner Anwendung erhöhen. Ich weiß, dass ich es in der web.config für die gesamte Anwendung tun, aber ich würde es eher auf nur diese eine Aktion ändern.

Web.config Beispiel:

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

Wie kann ich es tun?

War es hilfreich?

Lösung

Sie können dies programmatisch in der Steuerung: -

HttpContext.Current.Server.ScriptTimeout = 300;

Setzt das Timeout auf 5 Minuten anstelle der Standard 110 Sekunden (was für eine ungeradee default?)

Andere Tipps

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

Wahrscheinlich ist es besser, solche Werte in web.config setzen statt Controller. Zu von konfigurierbaren Optionen wird als schädlich betrachtet.

Ich hatte "Current" mit .NET 4.5 hinzuzufügen:

HttpContext.Current.Server.ScriptTimeout = 300;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top