Сценарий
У меня есть метод, который выполняет операцию базы данных (скажем). Если во время этой операции возникает какое-либо исключение, я просто хочу передать это исключение вызывающему. Я не хочу выполнять какую-либо конкретную задачу в блоке catch, предполагая, что вызывающий абонент сделает все, что захочет сделать с этим исключением. В этом случае, какая из них является подходящей техникой обработки исключений?
try
{
// Some work that may generate exception
}
catch(Exception)
{
throw;
}
finally
{
// Some final work
}
Является ли вышеупомянутое эквивалентным следующему try/catch/finally?
try
{
// Some work that may generate exception
}
catch
{
throw;
}
finally
{
// Some final work
}
Является ли вышеупомянутое эквивалентным следующему try/finally?
try
{
// Some work that may generate exception
}
finally
{
// Some final work
}
Какой из них лучше другого? Какой из них следует использовать?