Recuperer instance d'une classe

[Résolu]
Signaler
Messages postés
178
Date d'inscription
jeudi 21 février 2002
Statut
Membre
Dernière intervention
30 juillet 2008
-
Messages postés
178
Date d'inscription
jeudi 21 février 2002
Statut
Membre
Dernière intervention
30 juillet 2008
-
Bonjour à tous,

Je suis en train de créer une fonction qui me genere N dataTable. Donc je cree une instance de chaque datatable avec un nom de tache different a chaque instance.
Et maintenant j'aimerai recuperer toutes les instance créer (en faite toutes les tables).

Est ce possible ?

Merci.

PS: voila ma fonction



private DataTable creationDatatable(
string sNomTable)


{


DataTable dtGenerique=
new DataTable (sNomTable);


DataColumn dc;


dc =
new DataColumn ("Numero",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("Nom",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("Libelle",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("DateDeb",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("Duree",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("Unite",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("DateFin",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);


dc =
new DataColumn ("NumeroType",System.Type.GetType ("System.Type"));


dtGenerique.Columns.Add (dc);



return dtGenerique;


}

6 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
37
pour être sûr utilise plutot cette syntaxe :


private void creationDatatable(
string sNomTable, out DataTable dataTable) {

dataTable = new DataTable(sNomTable);

blablabla...

}

Sébastien FERRAND
[MVP C#]
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
10
Je ne suis pas sur d'avoir compris ta question... Tu veux appeler
plusieurs fois ta fonction et récupérer toutes les tables créées ?



Dans ce cas utilise une collection :



En .Net 2 : List<DataTable> mesTables;

En .Net 1 : Arraylist mes Tables;



A chaque appel de ta fonction :



mesTables.Add(creationDatatable("nom de table")
)
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Avec la solution .Net1 que t'as donné nikoui oui
Avec la solution .Net2, pas besoin de cast

Mx
Messages postés
178
Date d'inscription
jeudi 21 février 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
Oui voila je veux recuperer toutes les tables créees. Mais uen fois que je les ai mis dans un tableau, je fais un cast et j'ai ma datatable, c'est ça ?
Messages postés
794
Date d'inscription
vendredi 24 septembre 2004
Statut
Membre
Dernière intervention
19 août 2008
10
Les listes t'offrent plusieurs moyen de récupérer tes tables, par
exemple soit directement en précisant l'indice de la table (en partant
de 0), soit en parcourant la liste élément par élément (pour cela, je
t'encourage à te renseigner sur les enumerator)
Messages postés
178
Date d'inscription
jeudi 21 février 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
Merci a tous pour ses precisions. Je vais me renseigner sur les enumerators.

Bonne journée.