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

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] DataSet > comment ça marche?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] DataSet > comment ça marche?

n°1385206
gargantua3​07
Posté le 10-06-2006 à 19:31:08  profilanswer
 

bon, voila, je debutte en C# et d'une maniere generale en .NET, et je cherche a utiliser les dataset.
Le truc, ce que j'suis completement paumé pour l'utilisation.
 
Je fait une appli qui doit montré (pour un projet) les liaisons possibles entre le XML et le C#, donc je montre différentes méthodes.
Globalement j'arrive à lire un fichier XML, a mettre ça dans un dataset et l'afficher dans un datagrid, meme si j'ai pas tout compris on foncitonnement.
 
Maintenant je voudrais écrire dans un fichier, je voudrais donc créer un tableau d'objet (pour mon exemple j'ai une classe Contact) à inserer, et pour l'une des méthodes je veux passer par un dataset.
 
Mais je n'ai aucune idée de comment l'initialiser, rien...
 
Alors vu que je n'ai rien trouvé d'assez clair sur le net, quelqu'un pourrait me donnerun exemple d'utilisation??
Ou nu lien vers un bon tuto concernant dataset/datagrid
 
Je précise que je ne passe pas par une base de donnée (pour le moment en tout cas), donc je ne suis pas sur que ce soit possible?
 
Merci


Message édité par gargantua307 le 11-06-2006 à 09:51:03
mood
Publicité
Posté le 10-06-2006 à 19:31:08  profilanswer
 

n°1385425
moi23372
Posté le 11-06-2006 à 15:55:53  profilanswer
 

pour t'expliquer plus en detail ce que c'est un dataset, il s'agit d'un composant très générique permettant de représenter les données sous forme de table.
 
Imagine toi une base de données avec des tables, un dataset permet d'avoir l'image de la base de données dans un seul dataset.
 
Il comprend des tables, des lignes et des colonnes.  
 
Maintenant, tu peux manipuler les données de ces tables très facilement.  
 
Donc la création d'un tel object
 
Dataset data = new Dataset();
data.Tables.add("Contacts" );
data.Tables["Contacts"].Columns.Add("Contact" );
 
data.Tables["Contacts"].Rows.Add(new Object[] { new Contact(...) });
data.Tables["Contacts"].Rows.Add(new Object[] { new Contact(...) });
data.Tables["Contacts"].Rows.Add(new Object[] { new Contact(...) });
...
 
et voila tu obtiendra une table "Contacts" avec une colonne "Contact" contenant des object "Contact" initialisé comme tu veux...
 
Voila j'espère que ça t'aura aidé... Bon courage

n°1385450
gargantua3​07
Posté le 11-06-2006 à 17:40:05  profilanswer
 

Merci beaucoup!
 
 
C'est exactement ce dont j'ai besoin! Et maintenant je comprend comment on utilise les tables/colonnes/ligne! J'avais un peu du mal à voir.
 
Merci!
 
 

n°1385458
moi23372
Posté le 11-06-2006 à 18:06:18  profilanswer
 

de rien, si tu as encore une autre question sur les dataset n'hésite pas...
 
pour ajouter une ligne tu peux également utiliser:
 
DataRow r = data.Tables["Contacts"].NewRow();
r["Contact"] = new Contact(...);
 
data.Tables["Contacts"].Rows.Add(r);

n°1385510
gargantua3​07
Posté le 11-06-2006 à 23:09:41  profilanswer
 

En faite apres un essaie, tu pourrais me donner un exemple pour LIRE un element precis?
 
par exemple un dataset avec une tables "contact", qq colonnes : "nom","prenom",...
et x ligne.
 
le mieux que j'ai reussi c'est d'obtenir le nom des collones :s
Alors j'suis pas sur que j'puisse le faire en un seul temps.
 
J'ai vaguement essayer de trouver la fonction qui allé bien pour me retourner une ligne sous la forme d'un objet que je cast en Ccontact mais j'ai pas réussi :(
 
 
Un exemple? ^_^
 
Merci.
 
 
(Je me suis débrouillé autrement pour mon appli mais ça m'interesse :p)


Message édité par gargantua307 le 11-06-2006 à 23:09:55
n°1385592
moi23372
Posté le 12-06-2006 à 09:11:12  profilanswer
 


for (int i=0 ; i < data.Tables["Contacts"].Rows.Count ; i++)
{
    string nom = data.Tables["Contacts"].Rows[i]["NOM"].ToString();
    string prenom = data.Tables["Contacts"].Rows[i]["PRENOM"].ToString();
    MessageBox.Show (nom + " " + prenom);
}

n°1385973
gargantua3​07
Posté le 12-06-2006 à 17:59:11  profilanswer
 

moi23372 a écrit :

for (int i=0 ; i < data.Tables["Contacts"].Rows.Count ; i++)
{
    string nom = data.Tables["Contacts"].Rows[i]["NOM"].ToString();
    string prenom = data.Tables["Contacts"].Rows[i]["PRENOM"].ToString();
    MessageBox.Show (nom + " " + prenom);
}


 
ok c'est niquel :)
 
je te remercie encore ^_^

n°1792971
darine8277
Posté le 28-09-2008 à 09:55:23  profilanswer
 

bjr  
svp que voulez vous dire par les pointillés ????
Dans:  
data.Tables["Contacts"].Rows.Add(new Object[] { new Contact(...) });             // ici
et aussi  
Dans:
 
DataRow r = data.Tables["Contacts"].NewRow();  
r["Contact"] = new Contact(...);     //  ici  
 
Merci de ma repondre                        

n°1792977
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-09-2008 à 10:11:34  profilanswer
 

Ce sont les éventuels paramètres du constructeur


---------------
J'ai un string dans l'array (Paris Hilton)
n°1792988
darine8277
Posté le 28-09-2008 à 10:53:50  profilanswer
 

slt harkonnen
j'avoue que je comprend pas trop ""Ce sont les éventuels paramètres du constructeur""
 
explique moi avec un exemple si cest possible
merci

mood
Publicité
Posté le 28-09-2008 à 10:53:50  profilanswer
 

n°1792992
moi23372
Posté le 28-09-2008 à 11:24:23  profilanswer
 

ce sont les bases de la programmation POO ça.  
Sais tu au moins ce qu'est un constructeur avec ou sans paramètre?


---------------
quand un homme raisonne mal c'est qu'il n'a pas les données pour raisonner mieux (diderot)
n°1793077
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-09-2008 à 18:45:45  profilanswer
 

darine8277 a écrit :

slt harkonnen
j'avoue que je comprend pas trop ""Ce sont les éventuels paramètres du constructeur""
 
explique moi avec un exemple si cest possible
merci


Comme le dit moi23372, ce sont les bases de la POO... Le constructeur d'une classe est la méthode appelée lors de l'instanciation de la classe. Cette méthode, comme toutes les autres, peut prendre des paramètres.
Après, je te renvoie vers un livre ou tuto de POO

n°1793171
darine8277
Posté le 29-09-2008 à 00:21:16  profilanswer
 

ok harkonnen
J'ai repris le code pour inserer un datarow dans un dataset,la compilation ne m'affiche pas d'erreur mais a l'execution l'insertion ne s'effectue pas !!!  c a d que le datagridview ne se remplit pas  
si dessous le code ecrit:
 
dataset data=new dataset();//creation du dataset
data.tables.add("personnel" );//creer la table personnel
data.tables["personnel"].columns.add("matr" );//creer la colonne
data.tables["personnel"].columns.add("nom" );//creer la colonne
 
data.tables["personnel"].rows.add(new object[] {1;"aaa"}//creer la ligne
 
ç fait 02 jours que je suis dessus mais sans succes please aider moi !!! :o

n°1793432
moi23372
Posté le 29-09-2008 à 16:12:32  profilanswer
 

tu as assigné ton dataset à ton datagridView?
 
via sa propriété "DataSource".
 
this.monDataGridView.DataSource = data;


---------------
quand un homme raisonne mal c'est qu'il n'a pas les données pour raisonner mieux (diderot)
n°1799134
darine8277
Posté le 13-10-2008 à 10:18:44  profilanswer
 

J'ai repris ce code pas d'erreur mais l'insertion ne s'effectue pas  
 
DataSet data=new DataSet();//creation du dataset  
data.Tables.Add("FONCTIONS" );//creer la table fonction
data.Tables["FONCTIONS"].Columns.Add("CODEF" );//creer la colonne  
data.Tables["FONCTIONS"].Columns.Add("LIBFONCT" );//creer la colonne  
this.fONCTIONSDataGridView.DataSource = data;//attribuer le dataset a un datagridview
data.Tables["FONCTIONS"].Rows.Add(new object[] { "'cODEFTextBox.Text'", "'lIBFONCTTextBox.Text'" });//creer la ligne  
 


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

  [C#] DataSet > comment ça marche?

 

Sujets relatifs
[resolu] pourquoi phpadmin ne marche pas[Resolu] string.lenght qui marche une fois sur deux
Java : comment ça marche les double ?Requète Access qui marche en local et pas à travers le réseau.
je ne comprends pas comment marche ce fla ....[Résolu] Lier un TextBox à un DataSet dans un TabControl
Le meme script marche sur certaines pages et pas sur d'autresMarche sous firefox pas sous IE
Faire plusieurs requetes SQL dans un dataSetBitmapData marche pas
Plus de sujets relatifs à : [C#] DataSet > comment ça marche?


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