Исключение тайм-аута Oracle ODP.NET - PullRequest
0 голосов
/ 02 августа 2011

Я использую ODP.NET в приложении c # и использую следующий код для выполнения хранимой процедуры:

OracleCommand _cmd = new OracleCommand();
        try
        {
            _cmd.CommandTimeout = 900;
            _cmd.Connection = myConnection;
            _cmd.CommandType = CommandType.StoredProcedure;
            _cmd.CommandText = storedProcedureName;

            _cmd.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            DisplayAnyway = true;
            ImportMessage = "General problem occured\n" + ex.Message;
            ex.ToString();
        }

У меня вопрос: как я могу изменить это, чтобы иметь возможность делать какие-то особые вещи, только когда возникает исключение тайм-аута. На odp.net, похоже, есть только OracleException и нет OracleTimeoutException или что-то в этом роде.

Спасибо!

Ответы [ 2 ]

3 голосов
/ 02 августа 2011

Проверьте свойства Code / ErrorCode OracleException , чтобы узнать, можете ли вы использовать их для распознавания конкретной ошибки.

1 голос
/ 02 августа 2011

Класс ODP.NET OracleException имеет свойство Number, которое должно содержать номер ошибки Oracle: Свойство Number в OracleException

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...