我有有不同的邏輯不夠,但幾乎同樣的異常處理兩個功能:在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