C # с помощью оператора ловить ошибку

Я просто смотрю на оператор using, я всегда знал, что он делает, но до сих пор не пытался его использовать, я придумал следующий код:

 using (SqlCommand cmd = 
     new SqlCommand(reportDataSource, 
         new SqlConnection(Settings.Default.qlsdat_extensionsConnectionString)))
 {
     cmd.CommandType = CommandType.StoredProcedure;
     cmd.Parameters.Add("@Year", SqlDbType.Char, 4).Value = year;
     cmd.Parameters.Add("@startDate", SqlDbType.DateTime).Value = start;
     cmd.Parameters.Add("@endDate", SqlDbType.DateTime).Value = end;
     cmd.Connection.Open();

     DataSet dset = new DataSet();
     new SqlDataAdapter(cmd).Fill(dset);
     this.gridDataSource.DataSource = dset.Tables[0];
 }

Кажется, это работает, но есть ли смысл в этом, поскольку, насколько я могу судить, мне все еще нужно заключить это в блок try catch, чтобы перехватить непредвиденные ошибки, например. Сервер SQL вниз. Я что-то пропустил?

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

Ответы на вопрос(16)

Ваш ответ на вопрос