Member 13738428 Ответов: 2

Как добавить два столбца datatable в один


У меня есть две даттаблицы

Dt1 и Dt2

Ст1

Id | Имя
1 | а
2 | b

Ст2

возраст | город
11 | Кочи
21 | Бангалор

Я хочу, чтобы выход был таким, как

Id | имя |возраст |город
1 | а | 11 | Кочи
2 | b | 21 | Бангалор

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

Я уже пробовал это сделать

Dt1= Dt1.Merge(Dt2);

2 Ответов

Рейтинг:
2

MadMyche

Другой вариант - добавить столбец в DT2 в качестве идентификатора и иметь этот идентификатор равным соответствующей строке в DT1. Это определит связь между таблицами, и они могут быть объединены с помощью LINQ.

Переполнение стека => внутреннее соединение таблиц данных в C#
[^]


Рейтинг:
0

OriginalGriff

Проблема в том, что слияние не делает то, что вы хотите: оно добавляет одну таблицу к другой с аналогичной схемой.
Так что слияние даст вам это:

1   a
2   b
11  Kochi
21  Bangalore
Он не может "объединить столбцы", чтобы сформировать новую таблицу, потому что он понятия не имеет, как связаны строки - и на самом деле в ваших таблицах нет ничего, что каким-либо образом связывает две строки вместе.

Чтобы сделать то, что вы хотите, вам придется создать новую третью таблицу с четырьмя столбцами и вручную добавить данные в каждую строку. (И надеюсь, черт возьми, что у них одинаковое количество строк).

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