Зачем дублировать записи при копировании строки из таблицы данных в другую? - PullRequest
0 голосов
/ 08 февраля 2019

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

Вот что я делаю:

foreach(DataRow dtTP in sltsrcTfobs.Rows) {
    DataRow destRow = dtTPositions.NewRow();
    destRow["SystemOrdinal"] = dtTP["PosID"];
    dtTPositions.Rows.Add(destRow);
}

В этом столбце есть только значения типа int.Например, на данный момент он имеет 10 строк, значения 1,2,3,4,5,6,7,8,9,10.Когда я копирую строки в новую таблицу данных dtTPositions, он копирует все 10 значений 10 раз, вставляя всего 100 строк.

1 Ответ

0 голосов
/ 08 февраля 2019

Поставьте dtTPositions.Clear() перед циклом foreach, чтобы очистить все элементы из dtTPositions.

Измените код, как показано ниже:

dtTPositions.Clear();
foreach(DataRow dtTP in sltsrcTfobs.Rows) {
    DataRow destRow = dtTPositions.NewRow();
    destRow["SystemOrdinal"] = dtTP["PosID"];
    dtTPositions.Rows.Add(destRow);
}
...