Получение NativeErrorCode из System.Exception? - PullRequest
1 голос
/ 09 декабря 2010

Как получить собственный код ошибки из System.Exception? Чтобы быть более конкретным, я ловлю EntityException, и мне нужно проверить, если это "25028 SSCE_M_INVALIDPASSWORD Указанный пароль не совпадает с паролем базы данных."

Внутренним исключением из моего EntityException является SqlCeException, которое говорит: «Указанный пароль не соответствует паролю базы данных». и тот, который я должен явно поймать.

1 Ответ

0 голосов
/ 09 декабря 2010

У SqlCeException есть свойство NativeError , поэтому, как только вы поймаете это исключение, посмотрите значение этого свойства:

catch (EntityException ex)
{
    var sqlCeEx = ex.InnerException as SqlCeException;
    if (sqlCeEx != null)
    {
        var nativeError = sqlCeEx.NativeError;
        // Do something with the native error
    }
}
...