Эта функция подключается к базе данных postgres и возвращает набор данных.Как вернуть сообщение об ошибке в другую функцию типа возврата?
Две вещи я хочется понять
- Если я получаю сообщение об ошибке, как я могу вернуть его?
Это лучший способ вернуть Dataset?
string strODBCDriverName = "DSN=Postgres_32"; public DataSet SelectDataSet(string sql, bool isProcedure, Dictionary<string, object> parameters = null) { using (OdbcConnection odbcConnection = new OdbcConnection(strODBCDriverName)) { odbcConnection.Open(); using (OdbcCommand odbcCommand = new OdbcCommand(sql, odbcConnection)) { if (isProcedure) odbcCommand.CommandType = CommandType.StoredProcedure; else odbcCommand.CommandType = CommandType.Text; if (parameters != null) foreach (KeyValuePair<string, object> parameter in parameters) odbcCommand.Parameters.AddWithValue(parameter.Key, parameter.Value); using (OdbcDataAdapter adapter = new OdbcDataAdapter(odbcCommand)) { using (DataSet ds = new DataSet()) { try { adapter.Fill(ds); return ds; } catch (Exception ex) { throw (ex); } finally { } } } } } }
Как примечание стороны, если вы на самом деле не нужен «наконец», вы можете просто опустить это. Кроме того, какую ошибку вы ожидаете получить? Если вы знаете исключение, поймайте только это, это не хорошая практика, чтобы поймать все исключения. –
Спасибо keyuer, но я хочу, как вернуть сообщение об ошибке функции, вызывающей эту функцию? –
Я вижу, ответ ниже кажется многообещающим. –