重复异常处理
本文关键字:异常处理 | 更新日期: 2023-09-27 17:49:37
我有一个关于重复异常处理的问题…
例如:Webmethods有try-catch块,try块里面有执行代码。这些try-catch块对于每个webmethod都是相同的。
是否有可能使它更容易,更易于维护,而不重复相同的代码?我知道方面的问题,但还有其他解决办法吗?
代码语言是c#,但我认为是通用解决方案。
使用函数式编程原理,您可以传递您希望以某种方式执行的操作或方法。
在c#中,你可以创建一个这样的方法来标准化你的代码:public void HandleExceptions(Action action)
{
try
{
action();
}
catch (ExceptionA exa)
{
}
catch (ExceptionB exb)
{
}
finally
{
}
}
,并像这样命名:
HandleExceptions(() =>
{
//insert code to be handled by try/catch structure
Method1();
});
HandleExceptions(() =>
{
Method2();
});