我有一个C#项目。是否可以编写代码来实现"如果在执行此类任务时出现异常(并且调试器可用),请立即中断,而不需要展开调用堆栈。"
另外,我只是想说,如果这是不可能的,我可以回答这个问题。
答案 0 :(得分:0)
如果您希望保留抛出异常的位置并保留调用堆栈,则只能通过记录StackTrace AFAIK来执行此操作。
public static class Logger
{
...
public static string CurrentStackDefaultLog()
{
// the true value is used to include source file info
var l_CurrentStack = new System.Diagnostics.StackTrace(true);
return l_CurrentStack.ToString();
}
...
}
Daniele Mazzeranghi
在https://www.codeproject.com/Articles/223611/How-to-log-the-current-call-stack-in-NET中提供了实现此代码的良好链接