У меня есть рабочая роль, разработанная с помощью ASP.NET MVC 4, которая реализует REST WS в Azure. Он использует Entity Framework v6 для подключения к Azure SQL DDBB. Обычно он работает нормально, но иногда я получаю исключение, когда пытается writte в DDBB с этим сообщением:Как обрабатывать ошибки соединения с SQL Azure DDBB с EF6
ошибка сообщается при совершении транзакции базы данных, но это не удалось определить, удалось ли сделка или не на сервер баз данных
Ошибка, связанная с проблемой соединения между Aplication Sever и DDBB. Я применил SQLAzureExcutionStrategy (пояснил here), чтобы получить отказоустойчивость соединения, но это не мешает ошибке, поскольку проблема соединения возникает во время фиксации, поэтому EF не знает, нужно ли повторять попытку или нет.
Существует пояснение here, в котором предлагается создать «контрольную таблицу дорожек», чтобы вставить «последовательность треков» в каждую транзакцию, и если произойдет переходное исключение (как мое), проверьте, существует ли строка или нет в таблице, чтобы решить retring или нет. Но я не уверен, что этот подход действителен при использовании ORM, например EF.
Когда я делаю DbContext.SaveChanges() и проблема связи возникает во время транзакции. Могу ли я предположить, что все или ничего не совершены? Если нет, какую стратегию я должен применять? Попытайтесь сделать SaveChanges при каждом обновлении?
Заранее благодарим за любую помощь, которую вы можете предоставить.
С уважением, Ivan.
я, наконец, получить ответ от Microsoft. Я еще не тестировал, но выглядит так: https://msdn.microsoft.com/en-us/data/dn630221 –