Методы извлечения значений из столбца DataTable в массив строк в C#

Чтобы получить значения в столбце DataTable и сохранить их в массиве строк в C#, вы можете использовать следующие методы:

Метод 1: использование LINQ и метода Select

DataTable dataTable = ... // Your DataTable object
string[] values = dataTable.AsEnumerable()
                          .Select(row => row.Field<string>("ColumnName"))
                          .ToArray();

Метод 2. Использование цикла

DataTable dataTable = ... // Your DataTable object
string[] values = new string[dataTable.Rows.Count];
for (int i = 0; i < dataTable.Rows.Count; i++)
{
    values[i] = dataTable.Rows[i]["ColumnName"].ToString();
}

Метод 3. Использование метода CopyToDataTable

DataTable dataTable = ... // Your DataTable object
string[] values = new string[dataTable.Rows.Count];
dataTable.AsEnumerable()
         .Select(row => row["ColumnName"].ToString())
         .ToArray()
         .CopyTo(values, 0);

Метод 4. Использование DataAdapter и метода Fill

DataTable dataTable = ... // Your DataTable object
string[] values = new string[dataTable.Rows.Count];
DataTable tempTable = new DataTable();
tempTable.Columns.Add("ColumnName", typeof(string));
using (DataAdapter dataAdapter = new DataAdapter())
{
    dataAdapter.SelectCommand = new SqlCommand("SELECT ColumnName FROM YourTable", connection);
    dataAdapter.Fill(tempTable);
}
for (int i = 0; i < dataTable.Rows.Count; i++)
{
    values[i] = tempTable.Rows[i]["ColumnName"].ToString();
}