2010-03-30 8 views
0

Je dois exécuter la méthode HttpContext.Current.Server.Execute dans mon application ASP.NET. Cette application a une opération WCF qui effectue un traitement. Actuellement, je dois effectuer mon traitement correctement depuis mon opération WCF. Cependant, je voudrais le faire de manière asynchrone.ASP.NET/WCF - Execute Server.Execute de manière asynchrone

Dans une erreur pour tenter cela de manière asynchrone, j'ai essayé d'exécuter Server.Execute dans le gestionnaire d'événements DoWork d'un BackgroundWorker. Malheureusement, cela jette une erreur qui dit

« référence d'objet non définie à une instance d'un objet »

L'élément HttpContext n'est pas nul. J'ai vérifié ça. C'est une propriété imbriquée dans l'objet HttpContext qui semble être nul. Cependant, je n'ai pas pu identifier pourquoi cela ne fonctionnerait pas. Cela se produit dès que je déplace le traitement vers le thread BackgroundWorker.

Ma question est, comment puis-je exécuter de manière asynchrone la méthode Server.Execute?

Merci,

Répondre

0

que vous faites quelque chose de terriblement mal. Vous ne devriez pas appeler Server.Execute à partir de votre service WCF. En fait, il semble que vous ne connaissiez pas la manière correcte de faire un traitement asynchrone dans une application ASP.NET. C'est assez différent d'une application de bureau. Voir "Asynchronous Pages in ASP.NET 2.0" pour un excellent article toujours pertinent.

Questions connexes