Bonjour,
est il possible de convertir le contenu d'une datable (ex: client) en une liste (de type client)?
Merci beaucoup!
Bonjour,
est il possible de convertir le contenu d'une datable (ex: client) en une liste (de type client)?
Merci beaucoup!
oui .... mais en cherchant juste un peu tu aurai trouvé tout seul....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 List<string> lResult = new List<string>(); DataTable lData; if (lData.Rows.Count > 0) { foreach (DataRow r in lData.Rows) lResult.Add(r["nom"].ToString());//nom est à remplacer par le nom du champt que tu cherche }
Je dirai plutot :
Et tu auras ta liste de client (Objet qui encapsule tes données clientes)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 List<Client> v_clients = new List<Client>(); DataTable v_dt = // ta requete foreach (DataRow r in lData.Rows) { v_clients.Add( new Client ( r[0],r[1] ....); // Alternatif et mieux je pense maFactoryClient.NewClientByRow(r); // ton code métier pour construire ton client est dans ta factory :) }
voila un exemple pour recupéré les liste ID et Valeur
Fonction qui retourne la liste
Class IdValueSelected
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
20
21
22
23
24 public List<IdValueSelected> GetListeIdValue(string id, string value, string tablename, SqlConnection connexion) { var request = "Select" + " " + id + ", " + value + " From " + tablename + " Order By " + value; var da = new SqlDataAdapter(request, connexion); var dataTable = new DataTable(); connexion.Open(); // Fill the data table with select statement's query results: da.Fill(dataTable); var lstData = new List<IdValueSelected>(); for (var i = 0; i < dataTable.Rows.Count; i++ ) { var idValueSelected = new IdValueSelected { Id = dataTable.Rows[i][0].ToString(), Value = dataTable.Rows[i][1].ToString() }; lstData.Add(idValueSelected); } return lstData; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class IdValueSelected { /// <summary> /// Id Selectionner qui correspond a un ID pour un combox /// </summary> public string Id { get; set; } /// <summary> /// la valeur de la combobox /// </summary> public string Value { get; set; } }
Tu peux changé la classe et la requette et tu aura une liste bien déterminé de tes valeur
Partager