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, но будет еще больше строк кода из-за необходимости ловить попытку.