private static void FillFeed(XmlDocument xml, MSYoutubeEntry feed) { feed.Title = GetNodeValue(xml.DocumentElement, "root:title"); feed.Author = GetNodeValue(xml.DocumentElement, "root:author/root:name"); feed.AuthorId = GetNodeValue(xml.DocumentElement, "root:author/yt:userId"); var nextPageUri = GetNodeValue(xml.DocumentElement, "root:link[@rel='next']/@href"); feed.NextPageUri = (String.IsNullOrEmpty(nextPageUri)) ? null : new Uri(nextPageUri); string stotal = GetNodeValue(xml.DocumentElement, "openSearch:totalResults"); int total; feed.Total = (int.TryParse(stotal, out total)) ? total : 0; var nodes = GetNodes(xml.DocumentElement, "root:entry"); foreach (XmlElement node in nodes) { var entry = new MSYoutubeEntry(); entry.Title = GetNodeValue(node, "root:title"); entry.Description = GetNodeValue(node, "media:group/media:description"); var tmp = GetNodeValue(node, "yt:position"); foreach (XmlElement thumbNode in GetNodes(node, "media:group/media:thumbnail")) { var thumbnail = new MSYoutubeThumbnail(); thumbnail.Url = GetNodeValue(thumbNode, "@url"); thumbnail.Height = GetNodeValue(thumbNode, "@height"); thumbnail.Width = GetNodeValue(thumbNode, "@width"); entry.Thumbnails.Add(thumbnail); } tmp = GetNodeValue(node, "root:link[@rel='alternate']/@href"); Uri uri; if (!Uri.TryCreate(tmp, UriKind.Absolute, out uri)) continue; entry.Uri = uri; feed.Entries.Add(entry); } }
private static void FillFeed(XmlDocument xml, MSYoutubeEntry feed) { feed.Title = GetNodeValue(xml.DocumentElement, "root:title"); feed.Author = GetNodeValue(xml.DocumentElement, "root:author/root:name"); feed.AuthorId = GetNodeValue(xml.DocumentElement, "root:author/yt:userId"); var nextPageUri = GetNodeValue(xml.DocumentElement, "root:link[@rel='next']/@href"); feed.NextPageUri = (String.IsNullOrEmpty(nextPageUri)) ? null : new Uri(nextPageUri); string stotal = GetNodeValue(xml.DocumentElement, "openSearch:totalResults"); int total; feed.Total = (int.TryParse(stotal, out total)) ? total : 0; var nodes = GetNodes(xml.DocumentElement, "root:entry"); foreach (XmlElement node in nodes) { var entry = new MSYoutubeEntry { Title = GetNodeValue(node, "root:title"), Description = GetNodeValue(node, "media:group/media:description") }; string tmp; // = GetNodeValue(node, "yt:position"); foreach (XmlElement thumbNode in GetNodes(node, "media:group/media:thumbnail")) { var thumbnail = new MSYoutubeThumbnail(); thumbnail.Url = GetNodeValue(thumbNode, "@url"); thumbnail.Height = GetNodeValue(thumbNode, "@height"); thumbnail.Width = GetNodeValue(thumbNode, "@width"); entry.Thumbnails.Add(thumbnail); } tmp = GetNodeValue(node, "root:link[@rel='alternate']/@href"); Uri uri; if (!Uri.TryCreate(tmp, UriKind.Absolute, out uri)) { continue; } entry.Uri = uri; feed.Entries.Add(entry); } }