У меня есть метод, как ...Объявление метода всегда вызывает исключение?
int f() {
try {
int i = process();
return i;
} catch(Exception ex) {
ThrowSpecificFault(ex);
}
}
Это приводит к ошибке компиляции, «не все пути кода возвращает значение». Но в моем случае ThrowSpecificFault() всегда будет выбрасывать (соответствующее) исключение. Поэтому я вынужден поставить положительную ценность в конце, но это уродливо.
Цель этого шаблона в первую очередь состоит в том, что «process()» - это вызов внешней веб-службы, но для перевода различных ожиданий интерфейса необходимо использовать различные исключения, например, ,
Любой чистый способ сделать это?
Связано: [Есть ли стандартный атрибут «никогда не возвращается» для функций C#?] (Http://stackoverflow.com/questions/1999181/is-there-a-standard-never-returns-attribute-for-c -функции) –