2016-04-20 4 views
-1

Мне нужно вставить/обновить 500 записей, используя Entity Framework в C#. В этом 500 записей записаны новые, а также существующие записи. В этих сценариях, как я могу это сделать?Массовые данные необходимо вставить/обновить с помощью Entity Framework C#

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

ответ

1

Entity Framework не является правильным выбором в этом случае, даже учитывая основную вставить инструкцию. Когда вы запускаете команду SaveChanges(), даже одна ошибка отменяет транзакцию, потому что EF всегда будет пытаться предотвратить вставку каких-либо неправильных данных (также не способен отделять важные ошибки от не важных ошибок).

Возможные варианты:

  1. вставки и сохранить каждый строк в Try/поймать блока (он работает, но это очень медленно и болезненно)
  2. Перейти к SqlConnection и обычная старая инструкция MERGE между временным таблицу с вашими данными и таблицу назначения (окончательно лучше) - отметьте this.
Смежные вопросы