Первый столбец строки DataTable в массив строк - PullRequest
15 голосов
/ 25 мая 2011

У меня есть DataTable.Я хочу получить в каждой строке значение первого столбца и добавить в массив строк.Я не хочу использовать цикл foreach для каждой строки и добавление в массив строк.Я попробовал это, но застрял в какой-то момент

DataRow[] dr = new DataRow[dtCampaignSubscriberLists.Rows.Count];
dtCampaignSubscriberLists.Rows.CopyTo(dr, 0);
string[] array = Array.ConvertAll(dr, new Converter<DataRow, String>(????));

Спасибо

Ответы [ 2 ]

32 голосов
/ 25 мая 2011
string[] array = yourTable
                 .AsEnumerable()
                 .Select(row => row.Field<string>("ColumnName"))
                 .ToArray();
5 голосов
/ 25 мая 2011

Вы можете сделать что-то вроде:

dtCampaignSubscriberLists.AsEnumerable().Select(r => r[0].ToString()).ToArray();

...