Как создать DataTable программно

Задача: создать DataTable максимально простым, удобным и понятным кодом C#.

 
DataTable someTable = new DataTable();

someTable.Columns.Add(new DataColumn("INT_ID_COLUMN", System.Type.GetType("System.Int32")));

someTable.Columns.Add(new DataColumn("STRING_COLUMN", System.Type.GetType("System.String")));

someTable.Columns.Add(new DataColumn("STRING_COLUMN2", System.Type.GetType("System.String")));

someTable.Columns.Add(new DataColumn("DECIMAL_COLUMN", System.Type.GetType("System.Decimal")));

// теперь с таблице можно работать
DataRow rowToAdd = someTable.NewRow();
rowToAdd["INT_ID_COLUMN"] = 1;
rowToAdd["STRING_COLUMN"] = "Истинное одиночество — это присутствие человека, который тебя не понимает.";
rowToAdd["STRING_COLUMN2"] = "Элберт Хаббард";
rowToAdd["DECIMAL_COLUMN"] = 0;
someTable.Rows.Add(rowToAdd);
// вариант со вставкой строки на конкретную позицию
//someTable.Rows.InsertAt(rowToAdd, 0);

Если у нас уже есть DataTable и мы хотим создать аналогичную, можно использовать метод Clone который создает полностью аналогичную таблицу без строк.

 
DataTable simularTable = firstTable.Clone();

Добавить в нее часть строк из первой таблицы можно с помощью метода ImportRow

 
simularPersTable.ImportRow(firstTable.Rows[1]);

DataColumn Constructor (String, Type)

Type.GetType Method (String)


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>