Я пытаюсь разобрать RSS-канал от http://b.fanfiction.net/atom/l/224/3/0/1/1/50/0/0/0/0, но по какой-то причине не удается найти по имени элемента. Я следую инструкциям от this page, но его пример, похоже, не работает на сайте фанфики.Не удается разобрать RSS-канал
Вот код, который я использую:
private void getData_Click(object sender, RoutedEventArgs e)
{
String rss = "http://b.fanfiction.net/atom/l/224/3/0/1/1/50/0/0/0/0";
HttpWebRequest request = HttpWebRequest.CreateHttp(rss);
request.BeginGetResponse(
asyncCallback =>
{
string data = null;
using (WebResponse response = request.EndGetResponse(asyncCallback))
{
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
data = reader.ReadToEnd();
}
}
Deployment.Current.Dispatcher.BeginInvoke(() => HttpsCompleted(data));
}
, null);
}
private void HttpsCompleted(string feedString)
{
// build XML DOM from feed string
XDocument doc = XDocument.Parse(feedString);
// show title of feed in TextBlock
XElement feed = doc.Element("feed");
XElement title = feed.Element("title");
String txt_title = title.Value;
txtBlk_FeedDescription.Text = txt_title;
// add each feed item to a ListBox
foreach (var item in doc.Descendants("entry"))
{
listBox1.Items.Add(item.Element("title").Value);
}
}
Я пытался просто перечислить все элементы и вложенные элементы док, запустив:
foreach (XElement element in doc.Elements())
{
txtBlk_FeedDescription.Text += element.Name.ToString() + "\n";
foreach (XElement subelement in element.Elements())
{
txtBlk_FeedDescription.Text += subelement.Name.ToString() + "\n";
}
}
И что в результате в следующем списке:
{http://www.w3.org/2005/Atom} кормить
{ 10} автор
{http://www.w3.org/2005/Atom} название
{http://www.w3.org/2005/Atom} субтитров
{http://www.w3.org/2005/Atom} ссылка
{http://www.w3.org/2005/Atom} обновлено
{http://www.w3.org/2005/Atom} идентификатор
{http://www.w3.org/2005/Atom} запись
{} http://www.w3.org/2005/Atom запись
{} http://www.w3.org/2005/Atom запись
...
Любая помощь на том, что я должен здесь делать?
Спасибо!