Я хотел бы преобразовать DataTable в IEnumerable<>
из Dictionary<string, object>
. Я попробовал следующий запрос LINQ,
from DataRow row in ds.Tables[0].AsEnumerable()
let rowDictionary = new Dictionary<string, object>()
from DataColumn column in row.Table.Columns.Cast<DataColumn>()
select rowDictionary.Add(column.ColumnName, row[column]).ToArray();
но я получаю следующую ошибку:
error CS1943: An expression of type
'System.Collections.Generic.IEnumerable<System.Data.DataColumn>' is not
allowed in a subsequent from clause in a query expression with source type
'System.Data.EnumerableRowCollection<AnonymousType#1>'. Type inference
failed in the call to 'SelectMany'.
Я знаю, что могу перетащить это с помощью цикла, но мне кажется, что я должен что-то делать в LINQ. Заранее благодарим за помощь!