我的第一個問題在這裏,我沒有很大的英語,所以請多多包涵,重新拋出try塊C#異常
我寫一個應用程序,允許用戶編寫腳本接口與「司機」 ,腳本和驅動程序都是獨立的類庫dll。這些類通過傳遞的回調代理進行通信,所以在編譯時它們不被鏈接。
例如:(腳本) - >(將它處理 通訊程序) - >(司機)
現在我的問題是:
當腳本執行通過的方法一個委託,它拋出一個異常,異常是冒泡備份到腳本和用戶可以處理它,如果他們在try-catch塊中捕獲它,如果不是,該異常必須在我的程序中捕獲。
它工作正常,像這樣的,但我不知道這是正確的方式去:
delegate object ScriptCallbackDelegate(string InstanceName, string MethodName, object[] Parameters);
static private object ScriptCallbackMethod(string InstanceName, string MethodName, object[] Parameters)
{
try
{
return InterfaceWithDriver(InstanceName, MethodName, Parameters);
}
catch(Exception e)
{
try
{
throw;
}
catch
{
Console.WriteLine("Script did not handle exception: " + e.Message);
return null;
}
}
}
嘗試在此查找您的答案[鏈接](http://stackoverflow.com/questions/7890461/how-to-rethrow-a-prior-exception-from-inside-a-nested-try-catch-block -c),希望你在這裏找到你的答案。希望它有效。 – Rahul 2013-04-26 06:57:04