Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1533 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Boucle for sur DataSet ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] Boucle for sur DataSet ??

n°1205584
le_duc
PlaTyPuS
Posté le 22-09-2005 à 22:29:58  profilanswer
 

:hello:  
 
Comment je fais pour faire une boucle sur le [1] de cette matrice de dataset (ds est un DataSet)? (d'ailleurs j'arrive pas du tout à m'imaginer cette matrice...si qqn peut m'expliquer ;))
 

Code :
  1. ds.Tables[0].Rows[1]["Prix par pers."]


 
La partie fixe étant ["Prix par pers."]. Avec une simple matrice, c'est facile... mais là je suis paumé!
 
Merci pour votre aide!
 
++

mood
Publicité
Posté le 22-09-2005 à 22:29:58  profilanswer
 

n°1205718
le_duc
PlaTyPuS
Posté le 23-09-2005 à 09:54:15  profilanswer
 

up

n°1205818
zetranber
Posté le 23-09-2005 à 12:11:34  profilanswer
 

Tu veux simplement fair une boucle sur les lignes de ton dataset et recup les valeurs de la colonne "Prix par pers." ??
 

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )
  2. {
  3.    messageBox.Show( row["Prix par pers."].ToString() );
  4. }


 
Je suis pas sur d'avoir bien compris ta question parce que ca me parait simple :D

n°1205863
le_duc
PlaTyPuS
Posté le 23-09-2005 à 13:48:12  profilanswer
 

zetranber a écrit :

Tu veux simplement fair une boucle sur les lignes de ton dataset et recup les valeurs de la colonne "Prix par pers." ??
 

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )
  2. {
  3.    messageBox.Show( row["Prix par pers."].ToString() );
  4. }


 
Je suis pas sur d'avoir bien compris ta question parce que ca me parait simple :D



Message édité par le_duc le 23-09-2005 à 13:54:59
n°1205869
le_duc
PlaTyPuS
Posté le 23-09-2005 à 13:55:11  profilanswer
 

oui, c'est bien une boucle comme ca que j'aimerais faire, mais à l'intérieur de la boucle j'aimerais tester si le prix par pers. = 0 alors je change la valeur! (mais en restant dans le ds.Tables[0] si possible)


Message édité par le_duc le 23-09-2005 à 14:07:08
n°1205914
zetranber
Posté le 23-09-2005 à 14:34:52  profilanswer
 

Et bien, remplace le code du messageBox par une boucle de test tout simplement !
 

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )
  2. {
  3.    if ( row["prix par pers"] != DBNull.Value && (int)row["prix par pers"] == 0 )
  4.    {
  5.        row["priw par pers"] = 10; // par exemple :)
  6.    }
  7. }


 
A la sortie du foreach, tout le dataset a été scanné, et les valeurs modfiées.

n°1205929
le_duc
PlaTyPuS
Posté le 23-09-2005 à 14:50:33  profilanswer
 

zetranber a écrit :

Et bien, remplace le code du messageBox par une boucle de test tout simplement !
 

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )
  2. {
  3.    if ( row["prix par pers"] != DBNull.Value && (int)row["prix par pers"] == 0 )
  4.    {
  5.        row["priw par pers"] = 10; // par exemple :)
  6.    }
  7. }


 
A la sortie du foreach, tout le dataset a été scanné, et les valeurs modfiées.


 
ahh  :ouch: trop cool! je croyais que je devais passer qd meme par ds.Tables[0]! mais si les valeurs sont direct modifiées, c trop beau :)

n°1205936
zetranber
Posté le 23-09-2005 à 14:56:05  profilanswer
 

Ben non, quand tu ecris  

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )


 
C'est vers la ligne courante que va pointer l'objet row.
C'est une histoire de pointeurs tout ça.
 
Donc quand tu la modifies, ca modifie dans le dataset aussi !
 
@+
 :hello:  

n°1205953
le_duc
PlaTyPuS
Posté le 23-09-2005 à 15:08:31  profilanswer
 

zetranber a écrit :

Ben non, quand tu ecris  

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )


 
C'est vers la ligne courante que va pointer l'objet row.
C'est une histoire de pointeurs tout ça.
 
Donc quand tu la modifies, ca modifie dans le dataset aussi !
 
@+
 :hello:


 
 :jap:  on en apprend tout le jour :D
 
Merci beaucoup pour ton aide, ca marche impecc  :love:

n°1205956
zetranber
Posté le 23-09-2005 à 15:11:30  profilanswer
 

yep de rien.
 
Au plaisir.

mood
Publicité
Posté le 23-09-2005 à 15:11:30  profilanswer
 

n°1207351
ixemul
Nan mais sans blague ! ⚡
Posté le 26-09-2005 à 09:20:47  profilanswer
 

zetranber a écrit :

Ben non, quand tu ecris  

Code :
  1. foreach ( DataRow row in ds.Tables[0].Rows )


 
C'est vers la ligne courante que va pointer l'objet row.
C'est une histoire de pointeurs tout ça.
 
Donc quand tu la modifies, ca modifie dans le dataset aussi !
 
@+
 :hello:


 
Sauf que les ponteurs en C# sont une hérésie [:ddr555]

n°1207491
zetranber
Posté le 26-09-2005 à 12:10:05  profilanswer
 

Bah on se comprend :)
J'aurais du employer le terme de référence, plutôt que pointeur :)


Message édité par zetranber le 26-09-2005 à 12:10:16

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Boucle for sur DataSet ??

 

Sujets relatifs
peut simplifier cette bouclecomment faire ma boucle ?!
[RESOLU]Boucle dans remplacement regexcomment faire une boucle "toutes les 3 secondes"?
[ms-dos]Comment, avec boucle FOR, trouver le lecteur assigné au CDprobleme de Boucle avec une macro!!!!
Construction d'un tableau dans une boucle whileboucle selection condition excel
[Batch] Boucle sur plusieurs fichiers - RESOLUComment supprimer une ligne d'un dataset
Plus de sujets relatifs à : [C#] Boucle for sur DataSet ??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR