Попробуйте / поймать вокруг подключения к базе данных? - PullRequest
0 голосов
/ 12 декабря 2011

Я делаю сайт, и я использую Entity Framework для подключения к базе данных.Должен ли я поставить

    try
    {
var query = from es in gr.sales
                        orderby es.tilbudsNavn
                        select es;
    }
    catch
{
lblError = "Sorry but you can't connecto to the database right now, try again later";
}

вокруг всех моих подключений к базе данных ??

Ответы [ 6 ]

3 голосов
/ 12 декабря 2011

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

1 голос
/ 12 декабря 2011

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

0 голосов
/ 12 декабря 2011

http://blogs.msdn.com/b/ericlippert/archive/2008/09/10/vexing-exceptions.aspx

Есть хорошая статья об исключениях Эрика Липперта.Он описывает, что следует ловить, а что нет.

Что касается вашего примера, я бы поставил исключение подключения к базе данных на «экзогенный» вид, который должен быть перехвачен.По крайней мере, для правильной обработки ошибок и, если доступ к БД критичен, закройте приложение с соответствующим сообщением / журналом.

0 голосов
/ 12 декабря 2011

Лучше создать один метод с Try-Catch с несколькими параметрами, один из которых - лямбда или func или действие, которое вы хотите выполнить.

Таким образом, вся ваша обработка будет в одном месте.

Также вы можете прочитать о здесь здесь или здесь

0 голосов
/ 12 декабря 2011

Только если вы можете сделать что-то полезное в вашем предложении catch. Ни в коем случае не используйте пустое предложение catch, поскольку оно поглотит все ваши ошибки в БД.

0 голосов
/ 12 декабря 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...