Получение данных XML из запроса https в .net? - PullRequest
1 голос
/ 14 марта 2011

Мне нужно создать веб-страницу ASP.net, приложение отображает отчет на основе данных XML.

Мне сказали, что я должен получить свои данные XML от https://www.example.com/foo.xml. Я бы хотел, чтобы приложение ASP.net получило данные на стороне сервера, интерпретировало их и отобразило отчет.

Мне нужно знать вещи:

1) Как заставить .NET Framework извлекать данные XML из https://www.example.com/foo.xml во время выполнения.

2) Как получить набор данных для соответствующего типа объекта, чтобы моя программа могла его прочитать?

Ответы [ 2 ]

0 голосов
/ 14 марта 2011

Вы должны иметь возможность использовать HttpWebRequest и HttpWebResponse для выполнения запроса и получения необработанного ответа. Метод GetResponseStream даст вам необработанный поток ответов, который можно обернуть, используя XmlReader.Create , чтобы прочитать ответ как XML.

Эти классы должны заставить вас двигаться в правильном направлении.

0 голосов
/ 14 марта 2011
WebClient wc = new WebClient();
byte[] data = wc.DownloadData("https://www.example.com/foo.xml");
XmlSerializer xs = new XmlSerializer(typeof(MyClass));
MemoryStream ms = new MemoryStream(data);
MyClass mc = (MyClass) xs.Deserialize(ms);

Предполагается, что сервер отправляет XML в формате UTF8, а MyClass является реализацией модели XML в .NET, которую можно десериализовать из этого XML.

...