【发布时间】:2013-05-16 00:05:32
【问题描述】:
是否有一个 C# 方法返回到最上面的调用者,MY Method 的名称会引发异常,即使 实际异常 是由另一个引发的(例如,当我的方法调用它时出现数据库驱动程序错误)?
调用者 -> MyMethod -> DbDriver(错误)
我想要“MyMethod”,而不是“DbDriver”
我宁愿不要在整个链条上重新抛出异常。
我当前的任务是遍历 StackTrace 帧,并使用 MethodBase.GetCurrentMethod().DeclaringType 解析出我的方法。
是否有内置方法来获取此信息或更优雅的解决方案?
谢谢!
【问题讨论】:
-
您需要的信息不只是在堆栈跟踪本身吗?
-
@Arran -- 是在堆栈跟踪中,我觉得以这种方式获取它有点笨拙。
-
我通过检查这个答案解决了stackoverflow.com/questions/27997276/…
标签: c# .net exception stack-trace