IEnumerable et un débutant

Résolu
peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012 - 2 févr. 2009 à 20:31
peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012 - 3 févr. 2009 à 13:46
Avé !
Je débute en c# alors me tapez pas tout de suite ;)

Sur ce code :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.ServiceModel.Syndication;
using System.Xml;
using System.Diagnostics;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            XmlReader reader = XmlReader.Create("http://rss.rtl.fr/une.xml");
            SyndicationFeed feed = SyndicationFeed.Load(reader);

            SyndicationItem item1 = new SyndicationItem();
            item1.Title = new TextSyndicationContent("Item 1");
            item1.Content = SyndicationContent.CreatePlaintextContent("This is the content for Item 1");
            //items.Add(item1);

            Debug.Print("=" + feed.Items);
            IEnumerable<string> lstTitresArticles = (from i in feed.Items select i.Title.ToString());

            foreach (string s in lstTitresArticles)
                Debug.Print("=" + x);
                //lst1.Items.Add(x);

        }
    }
}

Je bloque sur le dernier for each ! je pense que l'erreur vient du "string s" où a mon avis 's' doit être un item du flux ...

quelqu'un comprends mon truc ?
par avance merci

7 réponses

peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012
3 févr. 2009 à 08:39
Il fallait mettre i.title.Text et non i.Title.ToString() ! qu'est ce que c# ou .net est susceptible ! :)
IEnumerable

<
string> lstTitresArticles = (
from i
in feed.Items
select i.Title.Text);
3
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
2 févr. 2009 à 22:27
Hi,
lstTitresArticles et de type IEnumerable<string> donc si tu fais un foreach, tu itères sur un string....
Le code semble donc correct au niveau de cette boucle...

<hr />
-Blog-
-Site Perso-
0
peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012
3 févr. 2009 à 07:01
Bonjour,
Mais le problème est que x retourne ceci  sur le debug.print  :
=System.ServiceModel.Syndication.TextSyndicationContent

un avis ? bonne journée !
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
3 févr. 2009 à 09:19
Bonjour,
Rien avoir... la méthode ToString est héritée de la class object et aurait pu être surchargée par la classe TextSynDicationContent pour retournée n'importe quoi, comme le Title par exemple...

<hr />
-Blog-
-Site Perso-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012
3 févr. 2009 à 09:22
sans aucun doute de ma part mais je ne peux que constater : avec .ToString, ca marche pas , avec .Text ca marche
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
3 févr. 2009 à 13:16
Le "rien avoir" de mon dernier message allait avec "qu'est ce que c# ou .net est susceptible" ...

<hr />
-Blog-
-Site Perso-
0
peug Messages postés 232 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 5 octobre 2012
3 févr. 2009 à 13:46
ok ok ! Merci pas évident au début tout cela...
0
Rejoignez-nous