webForumDet fria alternativet

Webclient timeout

.NET

2 svar · 364 visningar · startad av l-boy

Medlem sedan juli 2003221 inlägg
Frågan#1

Håller på med ett projekt där jag behöver posta en massa data till en server med hjälp av WebClient.

Kör jag det lokalt -> servern fungerar det utmärkt och ett par hundra postningar fungerar utan problem. När jag däremot försöker köra skarpt och skickar & tar emot från samma maskin får jag timeout efter ett tag på 1-3 postningar av cirka 200 (på olika ställen varje gång).


try
{

     postData = "groupNo=4584&parentGroupNo=11965&name=kritor";
     
     WebClient myWebClient = new WebClient();
     myWebClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
     myWebClient.Encoding = Encoding.Default;
     byte[] byteArray = Encoding.ASCII.GetBytes(postData);

     byte[] responseArray = myWebClient.UploadData(postURL, "POST", byteArray);                    
     string tmpResponseText = Encoding.Default.GetString(responseArray);
     
     Response.Write(tmpResponseText);
     
 }

 catch (WebException ex)
 {
     Response.Write("ERROR!" + ex.ToString());
 }

Vad kan timeouten bero på? Kan det bero på att anslutningen inte stängs t.e.x (om nu det behövs)?

Medlem sedan juli 2003221 inlägg
#2

Det verkar fungera när jag kör en Thread.Sleep(100); efter varje postning. Men det känns ju inte helt rätt...

Medlem sedan jan. 20022 440 inlägg
#3

det behöver inte vara fel heller. Den mottagande sidan kanske helt enkelt inte hinner med. Hade själv detta problemet med SQL Server för ett tag sedan som vägrade inserts när den inte hann med. Thread.Sleep efter var 100e insert avhjälpte problemet.

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)