Как загрузить XML-файл в XDocument в Silverlight? - PullRequest
0 голосов
/ 18 марта 2011

XDocument не имеет метода загрузки, противоположного XMLDocument, так как мне загрузить XML-контент из Интернета с помощью URL-адреса?

1 Ответ

4 голосов
/ 18 марта 2011

На самом деле, XDocument имеет метод Load(Uri), но он предназначен только для перехода к страницам в вашем приложении.Это статический метод, поэтому вы делаете XDocument xDoc = XDocument.Load("/somepage.xaml");.Документация для метода Load(string): здесь .

Если вы хотите получить доступ к внешнему URL, вам нужно использовать класс WebClient.Вот пример, который я только что протестировал в приложении Windows Phone 7 (которое в основном SL3):

using System;
using System.Net;
using Microsoft.Phone.Controls;
using System.Xml.Linq;

namespace XDocumentTest
{
    public partial class MainPage : PhoneApplicationPage
    {
        // Constructor
        public MainPage()
        {
            InitializeComponent();
            WebClient wc = new WebClient();
            wc.DownloadStringCompleted += HttpsCompleted;
            wc.DownloadStringAsync(new Uri("http://twitter.com/statuses/public_timeline.xml"));
        }

        private void HttpsCompleted(object sender, DownloadStringCompletedEventArgs e)    
        {        
            if (e.Error == null)        
            {            
                XDocument xdoc = XDocument.Parse(e.Result, LoadOptions.None);            
                TextBlock1.Text = xdoc.FirstNode.ToString();        
            }    
        }
    }
}

Этот вопрос похож, но включает https, который яЯ не думаю, что вы имеете дело.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...