Открыть базу данных и ошибок Ханде


Как сделать этот код лучше?

if (Program.Data.DataBase.TryOpenDataBase())
{
 bool result; 
 DataBase= new Program.Data.DataBase(out result);
 if (!result)
 {
    if (Program.DataBase!= null) 
       Program.DataBase.Dispose();
     Program.DataBase= null;
     Log.WriteERROR("Can not open database");
     Application.Exit();
     return;
 }
 else
 {
    Log.WriteERROR("Can not open database");
    Application.Exit();
    return;
 }


557
3
задан 5 мая 2011 в 02:05 Источник Поделиться
Комментарии
2 ответа

Я хотел удалить этот параметр из конструктора. Это очень запутанно для чтения. Может создать функцию, которая вместо этого бросает исключение. Если база данных реализует интерфейс IDisposable, вы можете использовать блок using.

Редактировать - у вас есть некоторые дублировать код, а также:

Log.WriteERROR("Can not open database");
Application.Exit();
return;

3
ответ дан 5 мая 2011 в 10:05 Источник Поделиться

Как правило, вы не должны возвращать коды ошибок, использовать исключения и try/catch блоки.

1
ответ дан 8 мая 2011 в 05:05 Источник Поделиться