Некоторые предпосылки, прежде чем я займусь вопросом. В настоящее время я работаю над проектом, который переносится с IBM DB2 на SQL Server. Не вдаваться в подробности, но этот связанный с DB2 сервер иногда отключается от SQL-сервера, что нормально для связанных серверов. У меня это работает в коде и у меня есть настройка процесса, чтобы позаботиться об этом.Единичный тест для определенных типов исключений
В любом случае, я пытаюсь написать метод тестирования, который генерирует исключение DbException (которое является исключением, которое возникает при подключенном сервере не подключено) для проверки процесса, который я написал, когда связанный сервер отключен. Есть ли способ заставить бросить определенный тип исключения, чтобы я мог проверить свой код?
Пытаться поймать блок выглядит примерно так:
try
{
//Regular Processing and attempt to update to DB2
}
catch (DbException ex)
{
//Other processing to catch a linked server issue
}
catch (Exception ex)
{
//Even more processing for other exceptions
}
' DbException' - абстрактный класс. Вы должны либо создать собственный класс исключений, который может быть получен из него, а затем выбросить свой собственный класс или выбросить любой существующий тип, который происходит из 'DbException', например' SqlException'. –
Вы правы, я был жестким, это был обычный класс, который наследуется от класса Exception –