У меня мозг пердит, я пытаюсь сделать следующий метод более универсальным, чтобы любой List<T>
мог быть передан для параметра columnValues
. Вот что у меня есть:
public static DataRow NewRow(this DataTable dataTable, List<string> columnValues)
{
DataRow returnValue = dataTable.NewRow();
while (columnValues.Count > returnValue.Table.Columns.Count)
{
returnValue.Table.Columns.Add();
}
returnValue.ItemArray = columnValues.ToArray();
return returnValue;
}
Я мог бы изменить его на List<object>
и преобразовать исходный список перед передачей его методу, но я уверен, что есть лучший вариант: -)
Edit:
Пост Фрэнка заставил меня переосмыслить это. В большинстве случаев источником List<T>
будет List<object>
, поскольку значения столбцов, скорее всего, будут разных типов.
Для моего первоначального использования List<string>
имел смысл, потому что я создавал набор данных из синтаксического анализа CSV, который представляет собой весь текст на этом этапе.