Я работаю над приложением, в которое сразу много данных вставляется в базу данных SQL. Я использую LINQ to SQL, и у меня есть что-то вроде этой операции вставки:
foreach (var obj в объектах)
{
context.InsertOnSubmit (OBJ);
}
context.SubmitChanges ();
Вот проблема: если я получаю исключение (например, DuplicateKeyException), я не знаю, какой объект вызвал проблему. Единственная информация, которую я получаю, это то, что по крайней мере один из объектов содержит значения ключей, которые идентичны другим ключам в базе данных.
Можно ли получить дополнительную информацию о том, какие объекты вызвали конфликт?
Конечно, я мог бы вызывать SubmitChanges после каждого и каждого InsertOnSubmit, но с количеством вставляемых данных это невероятно медленно.
У кого-нибудь есть советы для меня?
Спасибо!