Как писал @Jeroen в своем комментарии, SqlBulkCopy
может только вставить.
Однако вы можете вставить во временную таблицу и создать SQL для выполнения вашего оператора MERGE
в вашей целевой таблице.
Отказ от ответственности : я владелец проекта Массовые операции
Эта библиотека не является бесплатной, но предлагает вариант BulkMerge
, который вы ищете.
using (BulkOperation copy = new BulkOperation(conn2))
{
copy.DestinationTableName = destinationTable;
copy.BatchSize = 1000;
copy.BatchTimeout = 240;
copy.BulkMerge(dt);
MessageBox.Show("Data successfully transfered to Central Database", "Success!", MessageBoxButtons.OK, MessageBoxIcon.Information);
}