Обертка над исключением - Сделать так, чтобы блоки try/catch не дублировались - C#
Формулировка задачи:
У меня есть примерно такой код:
Как сделать так, чтобы блоки try/catch не дублировались? Вообще хочу просто уведомлять пользователя о том, что какой-то объект имеет не тот тип, который ожидает программа.
for (...) {
if (...) {
if (...) {
double d;
try {
d = (double)someobject;
} catch (System.InvalidCastException) {
что-то пишем в лог
}
делаем что-то еще, если исключение не брошено, используя d
} else {
int d;
try {
d = (int)someobject;
} catch (System.InvalidCastException) {
что-то пишем в лог
}
делаем что-то еще, если исключение не брошено, используя d
}
} else {
if (...) {
bool d;
try {
d = (bool)someobject;
} catch (System.InvalidCastException) {
что-то пишем в лог
}
делаем что-то еще, если исключение не брошено, используя d
} else {
string d;
try {
d = (string)someobject;
} catch (System.InvalidCastException) {
что-то пишем в лог
}
делаем что-то еще, если исключение не брошено, используя d
}
}
}Решение задачи: «Обертка над исключением - Сделать так, чтобы блоки try/catch не дублировались»
textual
Листинг программы
swith(someobject.GetType().ToString())
{
case "System.Double": ...
}