В настоящее время я работаю над устаревшим проектом в VB.NET 2.0.
В проекте есть очень забавный DAL-слой, который не включает транзакции: - |
В любом случае, моя работа - сделать некоторые части программы транзакционными, а я не
иметь доступ к коду уровня DAL.
Поэтому я пытаюсь поместить целые разделы кода в один TransactionScope.
Теперь вот проблема:
Когда SqlException генерируется где-то глубоко в слое DAL, моя транзакция всегда откатывается! Даже если я поймаю и обработаю исключение внутри того же TransactionScope.
Мой вопрос: это нормальное поведение?
и что я могу с этим поделать?
Я думаю, это нормально, что транзакция откатывается, когда исключение выбрасывается за пределы TransactionScope, но не если исключение обрабатывается в этих пределах!
Любая помощь будет высоко ценится!
Редактировать: SqlException фактически выдается из System.Data.Common.SqlCommand, поэтому я не могу остановить его.
С уважением,
LDX