2009-04-27 2 views
0

Я пытаюсь изолировать проблему, я, имеющий сделав RPC вызов XML:Проблема RPC вызов делает XML

XDocument doc = new XDocument(); 
doc.Add(new XElement("methodCall", 
     new XElement("methodName", "send"), 
     new XElement("params", 
      new XElement("param", new XElement("value", new XElement("string", this.ApiKey))), 
      new XElement("param", new XElement("value", new XElement("string", this.FromAddress))), 
      new XElement("param", new XElement("value", new XElement("string", recipient))), 
      new XElement("param", new XElement("value", new XElement("string", contents))) 
     ) 
    ) 
); 

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://urlremoved"); 
req.ContentType = "text/xml"; 
req.Method = "POST"; 

XmlTextWriter writer = new XmlTextWriter(req.GetRequestStream(), Encoding.UTF8); 
doc.Save(writer); 

HttpWebResponse response = (HttpWebResponse)req.GetResponse(); 
StreamReader reader = new StreamReader(response.GetResponseStream()); 
return reader.ReadToEnd(); 

Это только ларьки и никогда не раз из (даже если установить время ожидания на req.TimeOut и req.ReadWriteTimeout). Я удалил URL-адрес, в основном, чтобы сосредоточиться только на коде.

Есть ли что-то не так с кодом, который предотвратит создание этого звонка?

ответ

0

Что произойдет, если вы позвоните по телефону writer.Flush(); после сохранения XML?

Я не уверен, почему это не тайм-аут, но, возможно, это не тайм-аут, поскольку запрос не выполняется из-за того, что письмо буферизуется?