Как преобразовать DataTable в динамические объекты с использованием параллелизма в C#C#

Место общения программистов C#
Anonymous
Как преобразовать DataTable в динамические объекты с использованием параллелизма в C#

Сообщение Anonymous »

У меня есть функция C#, которая преобразует DataTable в список ExpandoObjects, где каждый объект представляет собой строку со свойствами, динамически назначаемыми на основе имен и значений столбцов

Код: Выделить всё

public static IEnumerable ToExpandoObject(this DataTable dataTable)
{
List dynamicDt = [];
var splitColumnNames = dataTable.Columns.Cast().Select(c => c.ColumnName.Split("_")[0]).ToArray();

foreach (DataRow row in dataTable.Rows)
{
dynamic dyn = new ExpandoObject();
dynamicDt.Add(dyn);
var columnIndex = 0;

foreach (DataColumn column in dataTable.Columns)
{
var dic = (IDictionary)dyn;
dic[column.ColumnName] = ConvertColumnValue(row[column], splitColumnNames[columnIndex]);
columnIndex++;
}
}

return dynamicDt;
}
Я хочу улучшить производительность этой функции за счет использования параллельной обработки.
Как я могу изменить эту функцию, чтобы она работала эффективно параллельно?
п>

Подробнее здесь: https://stackoverflow.com/questions/784 ... in-c-sharp

Вернуться в «C#»