Обложка канала

codaza

206 @codaza

Канал о разработке на платформе .NET с использованием языка программирования C#. Рассматриваются актуальные подходы и современные методологии разработки.

codaza

4 года назад
Открыть в
#капитану_на_заметку Всем привет! Entity Framework Core — суперпопулярное решение для работы с базами данных в ASP.NET. При исполнении запросов к базе данных, нередко появляются самые разные ошибки ("Timeout expired", "Transaction was deadlocked" и пр.). Обычным решением в борьбе с такими ошибками, является применение политики повторов. Проще говоря, делается повторная попытка выполнения SQL-запроса через некоторый Timeout. Для решения этой несложной задачи, начинающими (и не очень 😉) разработчиками, придумывается огромное количество "велосипедов". Однако существует стандартное решение — EnableRetryOnFailure. Данный метод позволяет настроить контекст на использование стратегии повторов. Это делается очень просто в файле Program.cs. В конфигурации есть возможность задать максимальное количество повторных попыток, максимальную задержку между повторными попытками и дополнительные номера ошибок для обработки. Подробнее можно прочитать в официальной документации. -1 велосипед, который так и тянет написать ✅