Я обновил свой EF до EF 6.0.2 в своем коде. У меня есть следующая строка кода:
applicationDbContext.Database .ExecuteSqlCommand(@"ALTER DATABASE
CURRENT SET RECOVERY FULL;");
После обновления появляется следующее сообщение об ошибке:
Атрибут ALTER DATABASE не допускается в рамках нескольких заявлений сделка.
Я исправил проблему с помощью TranscendalBehavior, как и код ниже:
applicationDbContext.Database.ExecuteSqlCommand(
TransactionalBehavior.DoNotEnsureTransaction, @"ALTER DATABASE CURRENT SET RECOVERY FULL;");
Мой вопрос:
- Почему я получаю эту ошибку с EF 6?
- Мое исправление является допустимым исправлением проблемы или дьяволом, скрывающимся за этим решением?
- Есть ли другой подход к решению проблемы?
Любая помощь будет принята с благодарностью!?