如何修复mscorlib.dll中出现"'System.AggregateException'"

jav*_*red 44 .net c# exception aggregateexception

我在调试器中遇到这样的问题,程序停止执行.调试器没有显示该行,所以我不知道要修复什么.

mscorlib.dll中发生了未处理的"System.AggregateException"类型异常

附加信息:通过等待任务或访问其Exception属性未观察到任务的异常.结果,终结器线程重新抛出了未观察到的异常.

无法获得本地或参数''的值,因为它在此指令指针处不可用,可能是因为它已经被优化掉了.System.Threading.Tasks.TaskExceptionHolder

如何解决我的问题?

我还发现这个非常相似的问题无法获得本地或参数的值,因为它在此指令指针处不可用,可能是因为它已被优化掉了

SLa*_*aks 52

正如消息所说,你有一个抛出未处理异常的任务.

打开所有异常中断(调试,例外)并重新运行该程序.
这将在最初抛出时显示原始异常.


(附加评论):在VS2015(或以上).选择Debug> Options> Debugging> General,取消选中"Enable Just My Code"选项.

  • 在VS2015(企业版)中.选择Debug/Options,然后转到"Debugging/General"并取消选中"Enable Just My Code"选项. (15认同)
  • @mdupls:中断所有CLR异常. (3认同)
  • 这个设置在哪里?Debug> Exceptions> ...? (2认同)
  • 只需检查一下.然后使用"全部重置"返回默认值. (2认同)

Dar*_*ren 8

您可以直接处理异常,这样就不会使程序崩溃(捕获AggregateException).您还可以查看内部异常,这将为您提供更详细的错误说明:

try {
    // your code 
} catch (AggregateException e) {

}
Run Code Online (Sandbox Code Playgroud)

  • 通常,如果出现问题,您希望应用程序崩溃。解决问题根源,而不是捕获所有异常。 (2认同)