如何在 Windows Universal 10 App 中无异常地获取 StackTrace

How to get StackTrace without Exception in Windows Universal 10 App

我知道可以使用:

System.Diagnostics.StackTrace t = new System.Diagnostics.StackTrace();

但这似乎不再有效,因为它需要一个异常对象。

查看 .NET Core's github 上的讨论: Where have StackTrace and StackFrame gone?.

.NET Core 中不存在这个 class,但是有一个开放的任务来实现它:Implement System.Diagnostics.StackTrace/StackFrame - 只是还没有人积极致力于它。

尝试Environment.StackTrace。请记住要小心之后的逻辑,因为堆栈可能会以不可预测的方式发生变化。这里有一些讨论:https://github.com/dotnet/corefx/issues/1420

作为 .Net Core 2.0 可用之前的解决方法,您可以按照 How to split a stacktrace line into namespace, class, method file and line number? -using RegEx or StackTraceParser

的答案中的建议解析 Environment.StackTrace 字符串