begin process at 2010 09 03 07:31:13
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Web Services

 > CONVERTIR UN OBJET EN DATATABLE ET VICE-VERSA

CONVERTIR UN OBJET EN DATATABLE ET VICE-VERSA


 Information sur la source

Note :
7 / 10 - par 1 personne
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Web Services Source .NET ( DotNet ) Classé sous :webservice, convertion, generics, dataset, datatable Niveau :Initié Date de création :22/09/2006 Date de mise à jour :22/09/2006 16:23:06 Vu / téléchargé :13 652 / 806

Auteur : sebmafate

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note


 Description

Lorsque l'on travaille avec les WebServices, on est "presque" obligé de passer par les DataSet pour fournir et récupérer des données.
Dans le but de simplifier mes passages d'objets, j'ai travaillé sur une classe qui permet de convertir automatiquement toute classe contenant des types simples en DataRow, DataTable et DataSet... et inversement.

En prime, c'est très simple d'utilisation.
Vous voulez que votre classe personne puisse être transformée en DataSet ? Rien de plus simple : héritez de ma classe... et c'est fini :)

Source

  • // Exemple d'utilisation :
  • public class Personne : Maf.Data.DataTableConvertibleClass<Personne> {
  • public Personne() {
  • base.currentObject = this;
  • }
  • private string nom;
  • private string prenom;
  • public string Nom {
  • get {return this.nom;}
  • set {this.nom = value;}
  • }
  • public string Prenom {
  • get {return this.prenom;}
  • set {this.prenom = value;}
  • }
  • }
  • // Pour convertir une instance de personne :
  • // En DataSet :
  • DataSet ds = personne.ToDataSet();
  • // En DataTable
  • DataTable table = personne.ToDataTable();
  • // En DataRow
  • DataRow row = personne.ToDataRow();
  • // Et l'inverse
  • // Depuis un DataRow
  • Personne personne = Personne.FromDataRow(row);
  • // Depuis une DataTable
  • List<Personne> personnes = Personne.FromDataTable(table);
// Exemple d'utilisation :

public class Personne : Maf.Data.DataTableConvertibleClass<Personne> {
	public Personne() {
		base.currentObject = this;
	}

	private string nom;
	private string prenom;

	public string Nom {
		get {return this.nom;}
		set {this.nom = value;}
	}

	public string Prenom {
		get {return this.prenom;}
		set {this.prenom = value;}
	}
}

// Pour convertir une instance de personne :
// En DataSet :
DataSet ds = personne.ToDataSet();

// En DataTable 
DataTable table = personne.ToDataTable();

// En DataRow 
DataRow row = personne.ToDataRow();

// Et l'inverse
// Depuis un DataRow
Personne personne = Personne.FromDataRow(row);

// Depuis une DataTable
List<Personne> personnes = Personne.FromDataTable(table);


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

22 septembre 2006 16:23:06 :
une petite erreur dans l'exemple

 Sources du même auteur

Source avec Zip Source .NET (Dotnet) SILVERLIGHT : METTEZ UNE TOUCHE D'AOP DANS VOS CONTRÔLES
Source avec Zip Source avec une capture Source .NET (Dotnet) BATCHIMAGECONVERTER
Source avec Zip Source .NET (Dotnet) MAFBINDERHELPER : UNE CLASSE POUR BINDER AUTOMATIQUEMENT VOS...
Source avec Zip Source .NET (Dotnet) WINDOWS FORMS VALIDATORS
Source avec Zip Source avec une capture Source .NET (Dotnet) BLUREDLABEL : UN LABEL AVEC UN FOND TROUBLE, COMME SOUS VIST...

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) CODE SOURCES TUTORIEL DÉTAILLÉ WSSF MODELING EDITION AVEC UN... par lefuturM
Source .NET (Dotnet) WEBSERVICES + AJAX = UNE BONNE MÉTHODE POUR BANIR L'AUTOPOST... par driver
Source avec Zip Source avec une capture Source .NET (Dotnet) RENDU DE TEXTE 3D GRÂCE AU WEBSERVICE XARA par ChriChri42
Source avec Zip Source avec une capture Source .NET (Dotnet) BERREWEATHER - SERVICE WEB MÉTÉOROLOGIQUE par iuniversal
Source avec Zip Source .NET (Dotnet) UTILISATION D'UN WEBSERVICE par gcorbineau

 Sources en rapport avec celle ci

Source .NET (Dotnet) AJOUT D'UNE IMAGE DANS UN RICHTEXTBOX SANS PRESS-PAPIER par yohan49
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMPLECONV - APPLICATION DE CONVERSION MONÉTAIRE AVEC TAUX E... par Jeffrey_
Source avec Zip Source avec une capture Source .NET (Dotnet) BATCHIMAGECONVERTER par sebmafate
Source avec Zip Source .NET (Dotnet) MOTEUR CSV ET RECORDSET PERSO par SwitchApocalyps
Source .NET (Dotnet) REFLECTION .NET par Yxion

Commentaires et avis

Commentaire de romagny13 le 03/02/2007 16:46:37

C"est pas bete cette idée que de pouvoir convertir une collection d'objets en DataTable et inversement,
car si en .NET 2.0 on peut passer facilement d'un DataReader à une DataTable  et et inverse (oDataTable.Load(oDataReader) et oDbDataReader = oDataTable.CreateDataReader();)
cela comble un manque cela me donne des idées

en tout cas plutot que de mettre des felicitations sur chacune de tes sources, je n'en mettrai qu'ici pour dire bravo et merci car elles sont tres interessantes et je vais surement pas en regarder

Commentaire de StefC le 02/01/2008 10:36:45

A vérifier mais il me semble que cela ne fonctionne pas avec les types nullable.

Stéphan.

Commentaire de mygalio le 07/02/2008 16:32:01

oui je confirme il y a un petit problème avec les type nullable.

Commentaire de rosty38 le 03/03/2010 16:51:39

Bonjour,
j'utilise ton code ( merci c'est tres utile, c'est la seul solution que j'ai trouvé pour resoudre mon probleme), pour recuperer des objet dans un dataset .
cependant j'ai une exception lors de l'exécution du pgm , Une TargetException, ici:

row[pi.Name] = pi.GetValue(obj, null);

dans la methode DataTableFromObject<T>(T obj)

Commentaire de sebmafate le 04/03/2010 09:30:37 administrateur CS

Quel type de champs est-ce ?
Est-ce que la classe a la même structure que la DataTable ?

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Erreur Datatable -> DataSet [ par jdaviaud ] j'ai un datatable de je remplis de la manière suivante :maLigne["champ1"] = "Valeur1";maLigne["champ2"] = "Valeur2";maLigne["champ3"] = "Valeur3";maLi Tri d'un dataset [ par dji200 ] Bonjour g un petit prob avec c#.netJe lit une liste de fichiers dans plussieurs directory.Je stocke cela dans une datatableje copie la datatable dans de datagrid vers dataset, pb d'exception [ par delegouine ] Je dois passer d'un datagrid vers un dataset. La source de mon datagrid est un datatable, je fais donc DataTable dt = (DataTable)dataGrid1.DataSource Datagrid, dataset et datatable [ par m0rph3us002 ] Bijour tout le mondevoil&#224; dans un de mes prog j'ai cr&#233;&#233;&nbsp;un datagrid auxquel je fais r&#233;f&#233;rence &#224; un dataset qui lui Comment écrire à la suite d'un fichier xml ? [ par m0rph3us002 ] Bonsoir !voil&#224; pour le moment j'arrive tr&#232;s bien &#224; rentrer des donn&#233;es dans un fichier xml grace &#224; : DataSet dataSet = new Da Recupere la structure dun dataset [ par matlocker ] Bonjour a tous,je voudrais recuperer la structure d'un dataset pour cr&#233;er un datatable. En effet j'e n'ai pas envie de parametrer manuellement mo datatable & dataset [ par yopdurat ] Bonjour,je poste une seconde question qui peut-&#234;tre r&#233;pondra &#224; ma pr&#233;c&#233;dente:Comment g&#233;n&#233;rer programmatiquement une Modifier une datatable d'un dataset [ par Overkill06 ] Bonjour à tous,j'ai un probleme de taille que je n'arrive pas à surmonter :Je dois modifier une table d'un dataset (je dois trier les colonnes de cett dataset et datagridview [ par cudenetf ] bonjour,je veux remplir un datagridview a partir d'un datatabledatagridview.source=datatable;mais j'aimerais personnaliser les colonnes d emon datagri datatable et select [ par cudenetf ] bonjour, je sais pas si c 'est la bonne rubrique mais j'ai un soucije charge les elements d'une base de données dans un dataset -&gt;datatable ordonné


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales