Я импортирую две таблицы Excel в две таблицы DataTable, но при импорте также меняю два столбца в каждой импортируемой таблице (первичный ключ для данных) с double на Int32. Я делаю это, создавая новый столбец Int32, перемещая данные в этот столбец, удаляя старый столбец и присваивая новому столбцу Int32 имя старого столбца.
Вот два исходных результата в сетке. Тот, что слева, содержит список личных титулов. Тот, что справа, содержит описания этих названий. Вы можете видеть, что поля Master ID и Sub Id являются ключами к этим таблицам.


Когда я пытаюсь объединить таблицы, я получаю очень плохие результаты. На снимке экрана ниже вы можете видеть, что данные не были правильно объединены. Он перезаписал Master ID 1 на Master Id 12 из второй таблицы данных - и ни одно из значений описания не было заполнено.

Теперь, если я возьму эти таблицы данных и сохраню их в XML (метод WriteXML), импортирую их, а затем запущу ту же процедуру слияния - я получить то, что я ожидал от метода слияния:

почему это происходит? Казалось бы, изменение типа поля вызывает у меня некоторые проблемы, и я не понимаю, почему. Есть ли что-то еще, что мне нужно изменить, прежде чем я запущу метод Merge для таблиц данных?
Подробнее здесь: https://stackoverflow.com/questions/798 ... data-types
Мобильная версия