TransactionAbortedException - Можете ли вы безопасно повторно запустить?C#

Место общения программистов C#
Ответить
Anonymous
 TransactionAbortedException - Можете ли вы безопасно повторно запустить?

Сообщение Anonymous »

Я использую TransactionScope в следующей моде

Код: Выделить всё

using (var scope = new TransactionScope())
{
using (var conn = SQLHelpers.GetSQLConnection())
{
//commands here
}
scope.Complete();
}
Иногда я получаю транзакцию abroartedexception при вызове Scope.complete () , поскольку транзакция уже отброшена обратно, и я использовал профилировщик для определения проблемы, связанный с тем, что это связан с тупиком.

transaction (идентификатор процесса 59) был вторженным на блокировку, и был Deghoscome, и был deglock -rescriouse, и был Deglock -Rescriouns, и был Deglock -Resources, и был Deglock -Rescriouves, и был Deglock -Rescriouse. Повторно затроните транзакцию. Тем не менее, это заставило меня задуматься, почему эта ошибка не пузырила до транзакции, которое AbroartedException , так что я действительно мог бы запустить транзакцию только для этого конкретного случая. Внутреннее исключение (ы) не содержало никакой информации, которая могла бы указать, какова была фактическая ошибка. /> Deadlock < /li>
Timeout < /li>
'Соединение было закрыто' < /li>
... другие? Тем не менее, вы могли бы обобщить это до всех случаев, если вам гарантировали откат. Вопрос может быть перепродан, чтобы задать: «Гарантия транзакции abroartedException.>

Подробнее здесь: https://stackoverflow.com/questions/401 ... ely-re-run
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»