Je lis un peu partout, que les dataset sont moins performant que les datareader.
Certain font le choix d'un datareader ou d'un dataset en fonction du mode connecté ou déconnecté de leur application.
D'autre font leur choix en fonction du type de données qu'ils veulent charger (si ce sont des données temporaires ils auront plutôt tendance à utiliser des datareaders).
Bref moi perso je suis perdu ... je sais plus quoi utiliser.
J'ai une appli qui fonctionne en mode connecté, et je veux charger des données "temporaires", surtout que ces données ne vont servir qu'a faire un affichage et je ne modifirai pas la base de données; donc je vais avoir tendance à utiliser un datareader.
Voici le code que j'utiliser :
Et oui j'utilise un dataset aprés mes datareader, parce que les composant de visualisation (devexpress) ont l'air de fonctionner que comme cela.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 var myDataAdapterProduit = new Devart.Data.MySql.MySqlDataAdapter( "SELECT produit,id_produit from shoporder.produit" , (Devart.Data.MySql.MySqlConnection)(Devart.Common.GlobalComponentsCache.GetObjectByName("FormPrincipale.mySqlConnection"))); var sourceDataSet = new DataSet(); myDataAdapterProduit.Fill(sourceDataSet, "Produit"); var myDataAdapterFamille = new Devart.Data.MySql.MySqlDataAdapter( "SELECT famille,id_famille,id_produit from shoporder.famille" , (Devart.Data.MySql.MySqlConnection)(Devart.Common.GlobalComponentsCache.GetObjectByName("FormPrincipale.mySqlConnection"))); myDataAdapterFamille.Fill(sourceDataSet, "Famille"); var relationProduitFamille = new System.Data.DataRelation("RelationProduitFamille", sourceDataSet.Tables["Produit"].Columns["id_produit"], sourceDataSet.Tables["Famille"].Columns["id_produit"]); sourceDataSet.Relations.Add(relationProduitFamille);
Est ce que je perds l'intérêt du datareader dans ce cas ?
Est ce que je ne ferais pas mieux d'utiliser directement un dataset ??
Merci pour votre aide.
Partager