Yagiz Ozturk
Yagiz Ozturk

Reputation: 5428

DataTable's Row's First Column to String Array

I have a DataTable. I want to get every rows first column value and append to a string array. I do not want to use foreach looping for every row and adding to string array. I tried this, but stuck at some point

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

Thanks

Upvotes: 15

Views: 29953

Answers (2)

Anthony Pegram
Anthony Pegram

Reputation: 126982

string[] array = yourTable
                 .AsEnumerable()
                 .Select(row => row.Field<string>("ColumnName"))
                 .ToArray();

Upvotes: 32

James Michael Hare
James Michael Hare

Reputation: 38427

You could do something like:

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

Upvotes: 5

Related Questions