private void btnCharger_Click(object sender, RoutedEventArgs e) { if (!string.IsNullOrEmpty(txtURL.Text) && !string.IsNullOrEmpty(txtNom.Text) && Uri.IsWellFormedUriString(txtURL.Text, UriKind.Absolute)) { // URL Blog: http://www.jbvigneron.fr/index.php/tutos/linq-1-utiliser-linq-pour-rechercher-calculer-trier-comparer-des-listes/ bool dejaPresent = _liste.Any(item => item.Nom == txtNom.Text || item.Flux == txtURL.Text); if (dejaPresent) { MessageBox.Show("Nom ou URL déjà utilisé"); } else { Rss rss = new Rss(txtURL.Text, txtNom.Text); listFlux.Items.Add(rss); _liste.Add(rss); } } }
/// <summary> /// Changer auteur par la description et mettre en place un affichage correct ! /// </summary> /// <param name="fluxrss">Le flux RSS à charger</param> /// <returns></returns> public static IList<Annonce> Lecture(Rss fluxrss) { string URL = string.Empty; IList<Annonce> annonces = new List<Annonce>(); XmlTextReader reader = new XmlTextReader(fluxrss.Flux); SyndicationFeed feed = SyndicationFeed.Load(reader); if (feed != null) { foreach (SyndicationItem item in feed.Items) { foreach (SyndicationLink item2 in feed.Links) { URL += item2.Uri + " "; } annonces.Add(new Annonce(item.Title.Text, item.Summary.Text, URL)); } } return annonces; }