Заполнить DataTable массивом - PullRequest
6 голосов
/ 19 марта 2011

У меня есть такой массив:

    const int dim = 1000;
    double[,] array = new double[dim, dim];

    Random ran = new Random();
    for (int r = 0; r < dim; r++)
        for (int c = 0; c < dim; c++)
            array[r, c] = (ran.Next(dim));

    DataTable dataTable = new DataTable();

Могу ли я заполнить dataTable данными array?

Ответы [ 3 ]

5 голосов
/ 19 марта 2011

Попробуйте что-то вроде этого:

var dt = new DataTable();
//AddColumns
for (int c = 0; c < dim; c++)
    dt.Columns.Add(c.ToString(), typeof(double));
//LoadData
for (int r = 0; r < dim; r++)
    dt.LoadDataRow(arry[r]);
1 голос
/ 19 марта 2011

Необходимо настроить столбцы, а затем загружать по одной строке за раз, используя

DataTable.LoadDataRow(), что занимает object[]

Проверьте пример на Страница MSDN .

0 голосов
/ 19 марта 2011

Да, вы можете, но вы должны сначала добавить 1000 столбцов в таблицу следующим образом:

dataTable.Columns.Add("Column" + c, typeof(double));

Однако реальный вопрос - почему вы хотите это сделать.DataTable - очень неэффективная структура данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...