Le problème est le suivant: Un serveur externe envoie des messages SMS entrants convertis en requêtes HTTP dans ma page .aspx parfois très consommatrice de temps. Si aucune réponse n'est renvoyée au serveur externe en 20 secondes, cela est considéré comme un délai d'attente et le même message est envoyé à ma page ASPX (et peut-être encore ....)ASP.NET, appel asynchrone vers une autre page, réponse immédiatement
La solution optimale pour moi serait que la page aspx lit le message entrant (en tant que requête HTTP à la page aspx), démarre le traitement du message dans un autre thread, et restitue immédiatement la réponse au serveur externe. Le serveur externe n'a aucun intérêt dans d'autres choses que le statut HTTP (normalement 200). Lorsque le traitement du message est terminé, cela entraîne une entrée dans le fichier journal de l'application. Le traitement du message se fait en faisant une autre requête web à une page aspx, et j'ai essayé d'utiliser la méthode BeginGetResponse pour la requête web, et j'ai créé un gestionnaire pour le traitement de la requête web terminée pour le traitement page. Le problème est que le gestionnaire ne semble pas être appelé, probablement parce que le cycle de vie de la page ASPX est terminé avant que la requête Web asynchrone soit terminée.
Quelqu'un at-il une bonne solution à ce problème? J'ai également regardé le modèle de page asynchrone, mais cela ne semble pas non plus être une solution pour moi parce que la réponse devrait être renvoyée au serveur externe avant que le traitement du message soit terminé.
Cordialement, Eivind
Merci pour la réponse. J'espérais une solution qui pourrait être implémentée dans la page ASPX elle-même, mais le dumping du message entrant dans la base de données et l'utilisation d'un service pour l'interrogation de nouveaux messages semble être une solution robuste –