J'ai hérité du code et je ne suis pas très familier avec les services Web. Voici comment le projet est mis en place:Erreurs de délai d'attente lors de l'appel du service Web dans C# .Net 2.0
Sous "Références Web", il y a une référence au service Web que nous utilisons. Dans le fichier Reference.cs de ce service il y a une classe qui hérite de SoapHttpClientProtocol, cette classe a une fonction appelée CandidateAdd() qui appelle this.Invoke (Je pense que cela fait l'appel de la méthode web)
Deux classes dérivent ensuite de celle dans le fichier Reference.cs (un pour l'environnement de production et un pour dev) et ils contiennent seulement une substitution de GetWebRequest (Uri), ici il met
webRequest.KeepAlive = false;
webRequest.MaximumAutomaticRedirections = 30;
System.Net.ServicePointManager.MaxServicePointIdleTime = 18000;
webRequest.AllowAutoRedirect = true;
//webRequest.Timeout = 18000;
et retourne l'objet de requête Web.
La nature de l'application est telle que cette méthode web ne sera probablement appelée que 50 fois par jour, donc ce n'est pas comme si le serveur s'embourbait ou quoi que ce soit, il semble plutôt que quelque chose soit configuré incorrectement.
Merci d'avance pour toute aide!
Voici l'erreur que nous gettting (toutes les parties sont xxxx'ed à nos bibliothèques) CandidateAdd Méthode non System.Net.WebException: L'opération a expiré à System.Web.Services.Protocols.WebClientProtocol .GetWebResponse (WebRequest demande) à System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse (requête WebRequest) à System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (String methodName, objet [] paramètres) à xxxxx.yyyyyy .zzzzz.fffffffff.CandidateAdd (String InputFile) at xxxxx.yyyyyy.ServiceWrapper.CandidateAdd (information de chaîne, chaîne wsServer) – spilliton
En outre, il réussit du côté serveur, nous sommes E seulement obtenir ces erreurs de notre côté. – spilliton
Ok, alors je dirais que la prochaine étape est de savoir combien de temps le serveur prend pour réussir; et pourquoi ça prend autant de temps. Exemple: hier, une requête modifiée expirait. Un coup d'œil rapide avec SQL Server 2008 Activity Monitor a montré qu'il me manquait des index. Le simple fait d'accepter sa suggestion a accéléré la requête 98% –