Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2011, 23:11   #1
tumanovalex
Пользователь
 
Регистрация: 07.03.2011
Сообщений: 83
Вопрос Обработка неправильного обращения к базе данных

При подключении к базе данных проверяю наличие соединения и при его отсутствии хотел бы выйти из программы:
Код:
private void MainForm_Load(object sender, EventArgs e)
{
  connection = new OleDbConnection();
  connection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" Application.StartupPath + "\\MyBaseTest2.mdb" ;
  try
  {
    connection.Open();
  }
  catch
  {
    MessageBox.Show("Ошибка соединения с базой данных MyBaseTest.mdb");
    Application.Exit();
  }
  OleDbCommand  command    = connection.CreateCommand();
  command.CommandText      = "SELECT objName FROM tblObject";
  OleDbDataReader reader   = command.ExecuteReader();
Однако Application.Exit(); не помогает, выполнение программы продолжается и на строке c reader появляется необработанное исключение. Если вместо Application.Exit() поставить return, то ошибки не происходит, но появляется пустая и бесполезная форма в DataGridView. Подскажите, пожалуйста, как правильно закрыть приложение при отсутствии подлючения к база данных.
tumanovalex вне форума Ответить с цитированием
Старый 01.06.2011, 06:25   #2
X-rus
 
Аватар для X-rus
 
Регистрация: 29.05.2011
Сообщений: 7
По умолчанию

Application.Exit:
Сообщает всем средствам переноса сообщений, что они должны завершить работу, а затем закрывает все окна приложения после обработки сообщений.

Вам нужно прописать return, после Application.Exit();, чтобы выйти из метода, а потом автоматически закроется окно.

Последний раз редактировалось X-rus; 01.06.2011 в 06:28.
X-rus вне форума Ответить с цитированием
Старый 02.06.2011, 22:08   #3
tumanovalex
Пользователь
 
Регистрация: 07.03.2011
Сообщений: 83
По умолчанию

Спасибо, помогло.
tumanovalex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрет нажатия кнопки и запрет неправильного ввода данных De_Kurlzz Помощь студентам 1 15.06.2011 15:14
Обработка неправильного обращения к базе данных tumanovalex C# (си шарп) 4 13.05.2011 22:12
Поиск в базе данных St-Dyx Microsoft Office Excel 8 19.10.2008 12:13