C# Language Configuration de Web.config sur la cible 4.5 pour un comportement asynchrone correct.


Exemple

Web.config system.web.httpRuntime doit cibler la version 4.5 pour garantir que le thread loue le contexte de la requête avant de reprendre votre méthode asynchrone.

<httpRuntime targetFramework="4.5" />

Async et wait ont un comportement indéfini sur ASP.NET avant 4.5. L'async / wait reprendra sur un thread arbitraire qui pourrait ne pas avoir le contexte de la requête. Les applications sous charge échoueront aléatoirement avec des exceptions de référence NULL accédant au HttpContext après l'attente. Utiliser HttpContext.Current dans WebApi est dangereux à cause de l’async