public List<RssFeedItem> Obter(string url) { var feed = new RssFeedReader().ListarFeed(url); //Separei para manter o conceito de Single Responsability var listaFeedItem = new RssFeedItem().ConverterListaFeed(feed); return listaFeedItem; }
public List<RssFeedItem> ConverterListaFeed(SyndicationFeed feed) { List<RssFeedItem> listaFeedItem = new List<RssFeedItem>(); foreach (var item in feed.Items) { var feedItem = new RssFeedItem(); feedItem.Titulo = item.Title.Text; feedItem.Url = item.Links.FirstOrDefault().Uri.ToString(); feedItem.Descricao = item.Summary.Text; feedItem.DataPublicacao = item.PublishDate.DateTime; feedItem.Conteudo = item.ElementExtensions.ReadElementExtensions<string>("encoded", "http://purl.org/rss/1.0/modules/content/").FirstOrDefault(); listaFeedItem.Add(feedItem); } return listaFeedItem; }