我的第一个问题在这里,我没有很大的英语,所以请多多包涵,重新抛出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