Создание таблицы данных из массива объектов - PullRequest
0 голосов
/ 20 июня 2011

Я не уверен, правильно ли я поступаю, но у меня есть метод c #, который загружает лист Excel в массив двумерных объектов. В этом массиве элементы 1,1 - 1,16 содержат заголовки, затем 2-1 - 2-16 содержат данные, которые совпадают с этими заголовками, как и x-1 - x-16 с этого момента. Я хотел бы включить это массив в таблицу данных, так что в конечном итоге я могу иметь его в формате, который я затем импортирую в базу данных доступа или SQL-сервера в зависимости от потребностей клиентов. Я попытался использовать следующий код безрезультатно, но у меня такое чувство, что я далеко. Любая помощь в этом была бы очень признательна.

private void ProcessObjects(object[,] valueArray)
{
    DataTable holdingTable = new DataTable();
    DataRow holdingRow;
    holdingTable.BeginLoadData();
    foreach(int row in valueArray)
    {
        holdingRow = holdingTable.LoadDataRow(valueArray[row], true);
    }
}

1 Ответ

0 голосов
/ 21 июня 2011

Есть ли вероятность, что вы используете шаблон репозитория (например, дозвуковой или EF) или используете LinqToSql?

Вы можете сделать это (LinqToSql для простоты):

List<SomeType> myList = valueArray.ToList().Skip([your header rows]).ConvertAll(f => Property1 = f[0] [the rest of your convert statement])
DataContext dc = new DataContext();

dc.SomeType.InsertAllOnSubmit(myList);
dc.SubmitChanges();
...