2010-06-02 5 views
2

J'essaie de résoudre un problème, mais je suis incapable de le reproduire localement sous IIS car, peu importe le niveau d'exécution de la commande executionTimeout, les requêtes ne sont jamais expirées.Qu'est-ce qui peut provoquer l'exécution de la fonction executionTimeout d'ASP.NET sous IIS?

J'ai essayé ce réglage via le web.config (via le code (Page.Server.ScriptTimeout = 5;.)

Je suis en cours d'exécution avec les binaires qui ont été compilés en mode de libération, et debug = faux est défini dans l'élément de compilation.

FWIW, sous Cassini (le serveur Web de développement autonome), tout fonctionne comme prévu, en cours d'exécution sur le même répertoire hors des exactement les mêmes ensembles/fichiers de configuration.

Toutes les idées sur ce qui pourrait être la cause de cela?

EDIT: Si cela est pertinent, le poste de travail de développement en question exécute Win7/IIS7.

EDIT 2: J'utilise la réflexion pour écrire HttpContext.Current.Timeout, et à la fois dans Cassini et IIS, il écrit la valeur que j'attends, donc il semble que ce soit une question de limite imposée par opposition être réglé incorrectement.

+0

Comment essayez-vous de provoquer l'expiration de la requête? –

+0

Boucle infinie, avec un Thread.Sleep (1000) dedans. – Jay

+0

Votre première modification indique-t-elle que la machine sur laquelle les délais d'attente ne sont pas appliqués est IIS7? Vous l'avez appelé un poste de travail de développement ... est-il déployé ailleurs (avec un IIS différent?)? – davidsleeps

Répondre

0

Votre absolument correct avec <compilation debug="false"/> étant une exigence ici.

<httpRuntime executionTimeout="45" /> à votre web.config. Cette valeur est en secondes.

référence MSDN ici http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.executiontimeout.aspx

De plus, il convient de noter que Server.ScriptTimeout a un limiteur de plage sur héritée de la métabase. Voir la section Remarques à http://msdn.microsoft.com/en-us/library/ms524831(v=vs.90).aspx

+0

http://msdn.microsoft.com/en-us/library/ms525225(v=vs.90).aspx pour un minimum de 90 secondes. – iain

Questions connexes