[C#] Spaltenwerte einer DataTable in einer Liste zurückgeben

Drucken
( 0 Votes ) 
Hauptkategorie: Programmieren Kategorie: C#
Erstellt am 21.01.2014 Zuletzt aktualisiert am 21.01.2014 Geschrieben von Jonny132
Arbeitet man mit der DataTable - Klasse um Daten zu halten, kommt man oft an den Punkt, an dem man eine Liste (List<>) der Werte einer Spalte brauchen kann um mit diesen weiterarbeiten zu können.

Mit einer einfachen selbst programmierten Hilfsfunktion lassen sich die Werte einer beliebigen DataTable und Spalte als Liste zurückgeben.

Funktion GetListFromDataTableColumn:
private List<string> GetListFromDataTableColumn(DataTable table, 
      string columnKey, bool emptyEntry)
{ 
   List<string> result = new List<string>();
   if (emptyEntry)
   {
       result.Add("");
   }
   foreach (DataRow row in table.Rows)
   {
      result.Add(Convert.ToString(row[columnKey])); 
   } 
   return result; 
}

Als Parameter für die Funktion muss man eine DataTable aus welcher man, die Daten extrahieren will übergeben, den ColumnKey welcher die Spalte angibt aus der man die Liste erstellen will und als dritten Parameter einen Boolschen Wert der besagt, ob ein Leereintrag am Anfang der Liste erstellt werden soll.

Die Funktion macht nichts weiter, als durch alle DataRows der DataTable zu iterieren, und die Werte Zeile für Zeile der Liste hinzuzufügen.

Aufruf:
GetListFromDataTableColumn(myDataTable, "meineSpalte", true);

Dieses Tutorial könnte Sie auch interessieren:
[C#] Spaltenwerte einer DataTable in einem Dictionary zurückgeben

    Veröffentlichen Sie ihre Kommentare ...