Derzeit tun wir dies, indem sie durch jeden Wert der Liste und Wörterbuch Looping:coverting Liste der Wörterbuch zu Datatable
private DataTable ChangeToDictionary(List<Dictionary<string,int>> list)
{
DataTable datatTableReturn = new DataTable();
if (list.Count() > 0)
{
Dictionary<string, int> haeders = list.ElementAt(0);
foreach (var colHead in haeders)
{
datatTableReturn.Columns.Add(colHead.Key);
}
}
foreach (var row in list)
{
DataRow dataRow = datatTableReturn.NewRow();
foreach (var col in row)
{
dataRow[col.Key] = col.Value;
}
datatTableReturn.Rows.Add(dataRow);
}
return datatTableReturn;
}
Aber gibt es einen besseren Weg? Schleifen so oft fühlt sich nicht gut an
Was zum Beispiel? Jeder andere Ansatz müsste schließlich alle Ihre Daten c.q. Schleife über die Datensätze. Ich sehe nicht das wirkliche Problem, das Sie haben. Sie mögen den obigen Code nicht? – Bazzz
Das funktioniert, aber wie gesagt gibt es einen besseren, robusten Weg – Simsons
Warum in eine DataTable überhaupt konvertieren? – Jodrell