Я звоню в веб-сервис с POST и получаю 2MB xml.Проблема в том, что это займет много времени, пока я не смогу использовать данные в потоке.Кажется, что ответ идет через 7 секунд, но для считывания содержимого (его строки) из потока ответов требуется еще 10 секунд.
Stopwatch s = new Stopwatch();
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(MyUri);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = Poststring.Length;
s.Start();
StreamWriter swriter = new StreamWriter(req.GetRequestStream());
swriter.Write(Poststring);
swriter.Close();
// Get the response. 7 sec
HttpWebResponse response = (HttpWebResponse)req.GetResponse();
s.Stop();
Debug.WriteLine("Talking to Web-Service: "+s.ElapsedMilliseconds);
s.Reset();
// Get the stream containing content returned by the server.
Stream dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream);
// Read the content. 10 sec
XmlReader xmlReader = XmlReader.Create(dataStream);
s.Start();
XDocument xdoc = XDocument.Load(xmlReader);
s.Stop();
Debug.WriteLine("Convert stream to some useful data: "+s.ElapsedMilliseconds);
вывод в миллисекундах
Talking to Web-Service: 6595
"Convert" stream to some useful data: 10772
Почему чтение содержимого занимает около 10 секунд?Есть ли еще какая-то связь с веб-сервисом или ожидание данных при чтении контента?Это простой текстовый файл (xml) размером около 2 МБ.Я думал, что эти 2 МБ были переданы в течение 6596 миллисекунд.Потому что, когда я вызываю эту службу через мой браузер, содержимое xml показывается через 6-7 секунд.
Время разговора с веб-службой в порядке, но что происходит в эти 10772 миллисекунды?
Редактировать: Проблема все еще там.Я получаю разные ответы, и они противоречат друг другу.