Чтение XML Feed в XElement - PullRequest
4 голосов
/ 13 июня 2011

У меня есть поток XML, который я хотел бы прочитать в XElement. Я видел образцы, которые используют XmlTextReader, но мне нужно это в XElement.

Код, который у меня пока есть:

string url = 
 String.Format( "http://dev.virtualearth.net/REST/v1/Locations/{0}?o=xml&key={1}", HttpUtility.UrlEncode( AddressQuery ), mapkey );

HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;  

XmlTextReader reader = new XmlTextReader( url );

Я просто не уверен, как получить читателя в XElement. Возможно, я поступаю неправильно.

Ответы [ 2 ]

8 голосов
/ 13 июня 2011

с linq to xml вы можете просто сделать это

var xml = XElement.Load(uri);
4 голосов
/ 13 июня 2011

Вы только создали экземпляр WebRequest - на самом деле сервер не запрашивает загрузку содержимого URL.Вызов WebRequest.GetResponse() должен загрузить содержимое URL с сервера.Страница MSDN для WebRequest содержит пример загрузки содержимого URL.

Получив ответ, вы можете вызвать XDocument.Load () и передатьэто поток ответа (путем вызова GetResponseStream() из объекта ответа).Класс XDocument имеет методы для получения XElement в документе XML.

...