IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

nullreferenceexception foreach datarow sql


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Par défaut nullreferenceexception foreach datarow sql
    Bonsoir tout le monde,

    Je sais que mon sujet est courant par ici mais je n'ai pas reussi a trouver une solution a mon probleme parmis la multitude d'aide que vous avez pu apporter.
    Je viens donc vous exposer mon probleme.

    Je souhaite faire un foreach pour lister le contenu du requete sql.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    string connectionString = ConfigurationManager.AppSettings["connectionString"];
                SqlConnection sqlConnection = new SqlConnection(connectionString);
                sqlConnection.Open();
                string SQLStatement = "SELECT * FROM Table_1";
                SqlDataAdapter SQLDataAdapter = new SqlDataAdapter(SQLStatement, sqlConnection);
                SQLDataAdapter.Fill(datasetAppointments);
                m_Appointments = LoadAppointments();
    Voici la fonction qui pose probleme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
            private List<Appointment> LoadAppointments()
            {
                List<Appointment> new_Appointments;
                new_Appointments = new List<Appointment>();
     
                    foreach (DataRow dataRow in this.datasetAppointments.Tables["Table_1"].Rows)
                    {
                            // Code
                    }
     
                return new_Appointments;
            }
    L'erreur nullreferenceexception se trouve sur le foreach.
    J'ai bien essaye de faire un breackpoint juste au niveau du foreach pour voir ce que je pouvais tirer du debugger, mais etant donne que c'est mon premier programme en C#, je ne sais pas trop quoi regarder.

    Si vous avez des suggestions je serais ravi de les entendre, parce que je dois dire que je seche sur le sujet.

    Un grand merci pour votre aide par avance.

    Damien

    Ps: Desole pour les accents, je suis sur un clavier QWERTY

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Causes possibles:
    1) instruction "datasetAppointments = new DataSet()" manquante,
    2) table datasetAppointments.Tables["Table_1"] non trouvée dans le dataSet.

    Mais, il me semble que dans les 2 cas, on aurait du avoir une exception au niveau du SQLDataAdapter.Fill().

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 9
    Par défaut
    Merci pour cette reponse rapide.

    Pour le 1, l'instruction a bien ete declare plus haut dans mon code.
    Pour le 2, comment je peux savoir s'il trouve bien ma table ?

  4. #4
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MessageBox.Show("Count=" + datasetAppointments.Tables.Count.ToString()) ;
    Tu devrais voir "Count=0".

    Sinon, regarde en Debug ce qu'il y a dans datasetAppointments.Tables[0].

Discussions similaires

  1. Requete SQL & Foreach
    Par Friksstyle dans le forum Langage
    Réponses: 5
    Dernier message: 14/05/2011, 07h13
  2. php/sql insert dans un foreach
    Par kaking dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/10/2009, 09h45
  3. [MySQL] Peu importe la taille du tableau, SQL est censé tout enregistrer(non pas foreach :D )
    Par Dermiste dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/04/2008, 01h47
  4. [SQL] addslashes et foreach
    Par fabien14 dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 01/12/2006, 19h53
  5. [PHP/SQL] foreach sur array multiples
    Par Flushovsky dans le forum Langage
    Réponses: 1
    Dernier message: 18/09/2006, 10h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo