我有有不同的逻辑不够,但几乎同样的异常处理两个功能:在C#中重用异常处理逻辑的最佳方式是什么?
public void DoIt1 // DoIt2 has different logic but same exception handling
{
try
... DoIt1 logic
catch (MySpecialException myEx)
{
Debug.WriteLine(myEx.MyErrorString);
throw;
}
catch (Exception e)
{
Debug.WriteLine(e.ToString());
throw;
}
}
这是不可能使用一个单一的切入点DoIt1和DoIt2,因为它们从外部要求收回。 复制/ Pase(对于异常块)是最佳方法吗?
重载在运行时不做任何事情,并且每个DoIt都有多个捕获,这正是需要避免的。 – 2009-06-25 22:56:05