Web- und Software Development

Ändern von Datentypen in einer befüllten DataTable

Written By: Mario Priebe - Aug• 11•10

Folgendes CodeSnippet zeigt, wie man einen oder mehrere Datentypen in einer befüllten DataTable in einen anderen Datentypen ändert. Als Parameter erwartet diese Methode die entsprechende DataTable und ein Dictionary der zum einen die zu ändernde Spalte und zum anderen den Datentypen enthält.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
///<summary>
/// Aendert eine oder mehrere Spalten in einer DataTable in einen angegebenen Datentypen,
/// schreibt die Werte aus der übergebenen DataTable in eine neue DataTable und gibt diese zurueck
/// </summary>
 
/// <param name="dataTable"></param>
/// <param name="columnDataType"></param>
/// <returns></returns>
public static DataTable ChangeDataColumnDataType(DataTable dataTable, Dictionary<string, string> columnDataType)
{
    var tableClone = dataTable.Clone();
    try
    {
        foreach (var dict in columnDataType)
        {
            tableClone.Columns[dict.Key].DataType = System.Type.GetType(dict.Value, true, true);
        }
        foreach (DataRow row in dataTable.Rows)
        {
            tableClone.LoadDataRow(row.ItemArray, false);
        }
    }
    catch (Exception ex)
    {
        //todo: exceptionhandling
        throw;
    }
    return tableClone;
}

Viel Spass beim entwickeln : )

Ähnliche Beiträge

You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.