Remplir un tableau de string with Datable

Résolu
thefolin
Messages postés
56
Date d'inscription
mercredi 3 octobre 2012
Statut
Membre
Dernière intervention
13 mai 2015
- 17 oct. 2013 à 15:58
Whismeril
Messages postés
17474
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
2 juillet 2022
- 18 oct. 2013 à 12:18
Bonjour

Voici le contexte, je doit remplir un tableau String avec des données récupérer sur une BDD.
Le problème est : Je n'arrive pas a remplir ce tableau mais j'arrive a visualiser mes données.

Voici mon code
 DataTable dt = new DataTable();
            
            tab_mot = new string[1000];// taille du tableau 
            this.oDS = this.oExo.g("toto");

            dt = oDS.Tables["toto"];

              foreach (DataRow dr in dt.Rows)
              {
// ici j'arrive a visualiser mes mots mais comment les stocker ? 
                  tab_mot = new string[] {dr["mots"].ToString()}; 
              }




--

3 réponses

Whismeril
Messages postés
17474
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
2 juillet 2022
600
Modifié par Whismeril le 17/10/2013 à 22:01
Bonsoir, il faut que tu extrait chaque valeur de Mots et que tu l'ajoutes à ton tableau.


              tab_mot = new string[1000];// taille du tableau 
              int i = 0; // index de la valeur dans le tableau

              foreach (DataRow dr in dt.Rows)
              {
                        tab_mot[i] = dr["mots"].ToString();// je pense que dr["mots"] est déjà un string, et donc que ToString ne sert à rien.
                        i++;//
              }



Ce serait plus simple si tu utilisais une liste plutôt qu'un tableau:
              List<string> tab_mot = new List<string>();

              foreach (DataRow dr in dt.Rows)
                        tab_mot.Add(dr["mots"]);// je pense que dr["mots"] est déjà un string, et donc que ToString ne sert à rien.



Il y a peut même moyen de faire en une ligne avec LinQ, mais je ne connais pas les datable alors je ne suis pas sûr.
1