vivektp Ответов: 1

Как объединить 2 таблицы данных независимо от типа данных столбца в коде C#


У меня есть 2 таблицы данных с одинаковыми именами столбцов (Datatable data - это данные из csv-файлов). Я использую 'Datatable.Опция Merge', но поскольку один из типов данных конкретного столбца таблицы не совпадает с этим столбцом другой таблицы, он выдает ошибку.

Как объединить 2 таблицы данных независимо от типа данных столбца в коде C#

Что я уже пробовал:

1. объект datatable1.Слияние(datatable2);
2. объект datatable1.Merge(datatable2,false,MissingSchemaAction.Добавь);

Также пробовать:-

по каждому элементу (ВАР подряд в dattable2.Строк)
{
datatable1.Rows.Add(строка);
}

ZurdoDev

Напишите код для циклического перебора и установки значений конкретных столбцов.

ZurdoDev

Или сделайте это непосредственно в базе данных. Это лучший вариант, если вы можете.

Maciej Los

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

vivektp

Спасибо за ваш ответ..
Мои Таблицы данных заполняются путем чтения CSV-файлов. Имена столбцов обеих таблиц данных одинаковы, но некоторые типы данных столбцов различны. Из-за этого при слиянии я получаю ошибку.

Richard MacCutchan

Вы не можете объединить различные типы данных, все они должны быть одинаковыми. Вам нужно будет проверять каждый элемент по мере его обработки и конвертировать один тип в другой.

1 Ответов

Рейтинг:
1

#realJSOP

Сделайте это в базе данных и используйте join чтобы ввести данные из обеих таблиц.

Предостережение: соединяемые таблицы должны иметь столбец, который можно сравнить на равенство, чтобы вы могли объединить соответствующие строки из обеих таблиц. Я бы создал представление, которое делает это, а затем вы можете просто запросить представление для своих данных.


vivektp

Мои Таблицы данных заполняются путем чтения CSV-файлов. Имена столбцов обеих таблиц данных одинаковы, но некоторые типы данных столбцов различны. Из-за этого при слиянии я получаю ошибку.

#realJSOP

Вы должны сделать соединение с Linq. Google "Linq join".