У меня есть ситуация, когда я использую репликацию транзакций сервера SQL из моей основной базы данных в свою базу данных отработки отказа. У меня есть основной сайт, и мой отказоустойчивый веб-сайт использует мою базу данных аварийного переключения.
Оба веб-сайта (используют структуру сущностей) идентичны (как и базы данных, мы надеемся).
Моя проблема в том, что некоторые операции завершаются сбоем на моем веб-сайте аварийного переключения, если моя репликация активна. После отключения репликации операция проходит нормально.
Я предполагаю, что существует некоторая проблема параллелизма между EntityModel моего веб-сайта отработки отказа и базой данных, когда он подвергается репликации.
Кто-нибудь сталкивался с подобными проблемами? Кто-нибудь с опытом работы с репликацией транзакций + структурой сущностей?
Вот исключение, которое я получаю:
at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
at System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)
at System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
at System.Data.Objects.ObjectContext.SaveChanges()
at Library.XXXXEntities.Context_SavingChanges(Object sender, EventArgs e)
in C:\SVN\Branches\Prod - 1.68.7\Library\LINQ\Audit.cs:line 38
at System.Data.Objects.ObjectContext.OnSavingChanges()
at System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
at System.Data.Objects.ObjectContext.SaveChanges() at Library.Provider.Save()
in C:\SVN\Branches\Prod - 1.68.7\Library\XXXX.Provider.cs:line 57
at XXXX.mnuExportGeneric.RecreatePositionsToBeUnique()
at XXXX.mnuExportGeneric.Export(Int32 programId, DirectoryInfo directoryDestination, Boolean exportInventory, Int32 CurrencyListID, Int32 configurationId, Boolean subFolder)
at XXXX.mnuExport.Export(Int32 ProgramId, String TempExportFolder, String ExportFolder, TreeView treeViewErreurs, Int32 CurrencyListID, Boolean exportInventory, Int32[] configurationsId)
Появляется проблема с отображением, но только при активной репликации транзакций.
Обновление : Я полностью вышел из среды своего приложения и просто пытаюсь вставить новую строку в таблицу в моей базе данных отработки отказа, когда репликация «существует», а не только активные швы, чтобы быть недопустимой , Завтра попробую с полностью удаленной репликацией ... или более радикальными изменениями вроде этого ...
Спасибо!