Ответ 1
Я предлагаю использовать LINQ to DataSet для запроса DataTable:
datatable1.AsEnumerable().Select(r => r.Field<string>("Name")).ToArray();
У меня такой тип данных:
Name | CategorieID | FullCategorie_ID
---- ------------- ----------------
A 1 12
B 1 13
C 5 14
D 3 15
E 6 16
Я хочу сохранить значения столбца 'NAME' в массиве, я использую это, чтобы получить значения строки. Например. Чтобы получить значения первой строки, я могу использовать следующий код.
var stringArr =datatable1.Rows[0].ItemArray.Select(x => x.ToString()).ToArray();
Но я не знаю, как получить все значения только первого столбца.
Я предлагаю использовать LINQ to DataSet для запроса DataTable:
datatable1.AsEnumerable().Select(r => r.Field<string>("Name")).ToArray();
Режим классический
List<String> stringArr = new List<String>();
// Classic version :-)
for( int a = 0 ; a < datatable1.Rows.Count ; a ++)
{
stringArr.Add(datatable1.Rows[a]["Name"].ToString());
}
List<string> _data = new List<string>();
foreach (DataRow row in datatable1.Rows)
{
_data.Add((string)Convert.ToString(row["Name"]));
}
Array test = _data.ToArray();