Какая проверка исключения типа требуется в linq внутри блока try / catch при выполнении операции CRUD

StackOverflow https://stackoverflow.com/questions/1417003

Вопрос

Какая проверка исключений типов требуется в linq внутри блока try / catch при выполнении CRUD (создание, чтение, обновление, удаление) ОПЕРАЦИИ

например:

try {
    db.SubmitChanges(ConflictMode.ContinueOnConflict);
}
catch (ChangeConflictException e) {
    foreach (ObjectChangeConflict occ in db.ChangeConflicts) {
        // All database values overwrite current values.
        occ.Resolve(RefreshMode.OverwriteCurrentValues);
    }
}
Это было полезно?

Решение

Если не совсем хорошо задокументировано, какие исключения будут выбрасываться в обычных сценариях сценариев использования (и я не могу сказать, что произойдет в вашей ситуации), я предлагаю попытаться сломать его, выполнив известные вам операции завершатся неудачно, а затем добавьте исключение, которое выдается, в блок try / catch.

Во всяком случае, попытка взломать собственный код - это хорошее упражнение для отладки, поскольку оно выявляет проблемы, которые могут возникнуть, что дает вам шанс на изящное восстановление.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top