Obtenir des informations de mon DataTable chargé
Question
Comment puis-je obtenir des informations de mon datable?
Je veux juste obtenir la colonne du début à la fin et la charger dans textboxes.text.
ClienteHolder.IDCliente = Tabla.Rows[]?????
La solution
Tabla.Rows[0]["mycolumnName"]
C’est ainsi que vous pouvez vous référer à une seule colonne. Qu'entendez-vous par colonne du début à la fin?
Quels sont les contrôles dans lesquels vous souhaitez stocker chacune des valeurs de la colonne?
Autres conseils
En règle générale, vous accédez à la collection de tables de l'ensemble de données, puis à la collection de lignes de la table. Comme ceci:
myDataSet.Tables[0] // you can also use the name of the table, instead of an integer
myTable.Rows[ n ] // this will give you the nth row in the table
myRow[ n ] // this will give you the nth column in the row, you can use the
// name of the column instead of an integer
cela va parcourir toutes les colonnes de toutes les lignes de toutes les tables de l'ensemble de données.
foreach( DataTable curTable in myDataSet.Tables )
{
foreach( DataRow curRow in curTable.Rows )
{
foreach( DataColumn curCol in Table.Columns )
{
object item = curRow[ curCol ];
}
}
}
La propriété Rows d'un datatable est IEnumerable. LINQ est le meilleur moyen d’aller ici, mais voici comment je le fais avec une boucle foreach (si je comprends bien votre question.)
Je veux juste obtenir la colonne du début à la fin et la charger dans textboxes.text.
foreach(System.DataRow dr in Tabla.Rows)//iterate rows
{
foreach(System.DataColumn dc in Tabla.Columns) //iterate columns per row
{
textboxes.text = dr[dc].ToString(); //get object value at row,column
}
}
LINQ serait comme lamda et génial, mais hélas, nous n’utilisons pas encore la version 3.x ici, donc je suis bloqué sur cette méthode.