При вставке записей время ожидания SQL Server истекает после относительно короткое время, говорящее: «Тайм-аут операции ожидания истек». Я не могу отладить развернутое приложение, чтобы выяснить, почему это происходит и в каком месте кода это происходит.
Однако я не получаю эту ошибку при использовании той же базы данных на компьютере разработки с локальным подключением.
Обычно используется следующий код:
Код: Выделить всё
void MapData( SqlTransaction transaction, Dictionary items )
{
foreach ( var i in items )
{
transaction.Save( "CHECKPOINT" );
try
{
ImportItem( transaction, i );
}
catch ( Exception e )
{
transaction.Rollback( "CHECKPOINT" );
}
}
ReportStatus();
}
Что это может быть?
Есть ли более надежный или эффективный подход, чем используя Save() и Rollback() в цикле?
Я не хочу использовать TransactionScope для создания новых «дочерних» транзакций.
Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/302 ... mote-serve