0

J'ai du code qui envoie une requête Web XML simple. Il est appelé à partir d'un service Windows. Parfois, le service commence à émettre des exceptions (System.Net.WebException: l'opération a expiré) et un redémarrage du service résout le problème. Voici le code:Expiration périodique des délais lors de l'utilisation de HttpWebRequest

public bool PerformXmlRequest(string xml) 
    { 
     var httpRequest = (HttpWebRequest)WebRequest.Create(_url); 

     httpRequest.Method = "POST"; 

     httpRequest.ContentType = "text/xml"; 

     using (var xmlWriter = new StreamWriter(httpRequest.GetRequestStream(), Encoding.UTF8)) 
     { 
      xmlWriter.WriteLine(xml); 
     } 

     using (var httpResponse = (HttpWebResponse)httpRequest.GetResponse()) 
     { 
      return httpResponse.StatusDescription == "OK"; 
     } 
    } 

Y at-il de toute évidence mal avec elle qui pourrait être la cause de ce problème?

Répondre

1

Il n'y a rien que je peux trouver est faux avec le code appelant.

L'erreur est-elle générée par le code côté client ou provient-elle du service? Si c'est du service c'est le service qui doit être réparé, idéalement le service ne devrait jamais expirer, peu importe ce que vous lui envoyez, il devrait échouer dans un mode plus contrôlé donnant un message d'erreur beter.

+0

Vous avez raison. Il n'y avait rien de mal avec le code. C'était un problème de serveur intermittent. Avoir quelques points. –

+0

Im ayant le même problème, et nous n'avons pas de serveurs intermittents ... – Ted