2010-10-20 8 views
1

J'essaie d'envoyer un fichier XML et de récupérer un fichier XML en guise de réponse. Le fichier que j'essaie d'envoyer est légèrement supérieur à 20 000 Ko. J'ai essayé d'ajouter un timeout et de mettre keepalive à false, mais aucun ne fonctionne. J'ai cherché autour mais je ne peux pas trouver n'importe quoi qui s'applique à moi. A partir de maintenant, je viens de briser le fichier et l'envoyer dans des fichiers entre 3 - 4 mille ko. Si quelqu'un a des idées, je l'apprécierais vraiment. Merci.HttpWebRequest: La demande a été abandonnée: La demande a été annulée

HttpWebRequest hrequest = (HttpWebRequest)WebRequest.Create(); 
hrequest.KeepAlive = false; 
hrequest.Timeout = 10000 * 60; 
hrequest.Method = "POST"; 
hrequest.Headers.Add("Authorization", "Basic " + 
    Convert.ToBase64String(Encoding.ASCII.GetBytes(""))); 
hrequest.ContentType = "application/x-www-form-urlencoded"; 
Byte[] byteArray = Encoding.UTF8.GetBytes(
    File.ReadAllText("C:\\Payvment\\UploadProductsXML\\" + qStart + ".xml")); 
hrequest.ContentLength = byteArray.Length; 
Stream reqStream = hrequest.GetRequestStream(); 
reqStream.Write(byteArray, 0, byteArray.Length); 
reqStream.Close(); 
StreamReader streamRdr = new StreamReader(
    hrequest.GetResponse().GetResponseStream()); 
string strResponse = streamRdr.ReadToEnd(); 
StringReader stringRdr = new StringReader(strResponse); 
+0

Vous n'indiquez pas le problème * réel * que vous rencontrez. Avez-vous une exception ou est-ce qu'il se passe autre chose? Aussi, pourquoi n'utilisez-vous pas un service Web pour cela? Ou cette option n'est-elle pas disponible pour vous? – casperOne

+0

Avez-vous envisagé d'utiliser FTP? – jimplode

+0

Je ne peux pas utiliser un ftp, j'utilise un webservice d'une autre société – sse

Répondre

1

le serveur web ne sera certainement pas permettre à une demande importante à moins de changer la taille du message max. dans wcf, la propriété est maxRecievedMessageSize et vaut par défaut 64k. De même, certaines de ces propriétés, max size/timeout sont des propriétés sur le serveur, et la modification de votre requête ne changera pas d'avis.

Questions connexes