如何修复mscorlib.dll中发生的''System.AggregateException'“
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何修复mscorlib.dll中发生的''System.AggregateException'“相关的知识,希望对你有一定的参考价值。
我在调试器中遇到这样的问题,程序停止执行。调试器没有显示该行,所以我不知道要修复什么。
mscorlib.dll中发生了未处理的“System.AggregateException”类型异常
附加信息:通过等待任务或访问其Exception属性未观察到任务的异常。结果,终结器线程重新抛出了未观察到的异常。
无法获得本地或参数''的值,因为它在此指令指针处不可用,可能是因为它已经被优化掉了。 System.Threading.Tasks.TaskExceptionHolder
如何解决我的问题?
正如消息所说,你有一个抛出未处理异常的任务。
打开所有异常中断(调试,例外)并重新运行该程序。 这将在最初抛出时显示原始异常。
(附加评论):在VS2015(或以上)。选择Debug> Options> Debugging> General,取消选中“Enable Just My Code”选项。
你可以直接处理异常,这样就不会崩溃程序(捕获AggregateException
)。您还可以查看内部异常,这将为您提供更详细的错误说明:
try {
// your code
} catch (AggregateException e) {
}
如果您可以轻松地重现问题,则接受的答案将起作用。但是,作为最佳实践,您应该捕获在任务中执行的任何异常(和日志记录)。否则,如果任务中发生任何意外情况,您的应用程序将崩溃。
Task.Factory.StartNew(x=>
throw new Exception("I didn't account for this");
)
但是,如果我们这样做,至少应用程序不会崩溃。
Task.Factory.StartNew(x=>
try {
throw new Exception("I didn't account for this");
}
catch(Exception ex) {
//Log ex
}
)
在我的情况下,我在使用Edge.js时遇到了这个问题 - 所有问题都是C#Edge.js函数定义中的javascript语法错误。
以上是关于如何修复mscorlib.dll中发生的''System.AggregateException'“的主要内容,如果未能解决你的问题,请参考以下文章
在 mscorlib.dll 中发生 System.ExecutionEngineException'
持续发生的 mscorlib.dll 中发生 System.Threading.ThreadAbortException
在 WPF C# 中保存图像时出现错误 System.UnauthorizedAccessException 在 mscorlib.dll 中发生
“System.OutOfMemoryException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理
EF异常:“System.InvalidOperationException”类型的未经处理的异常在 mscorlib.dll 中发生
mscorlib.dll 中出现“System.ServiceModel.CommunicationException”类型的未处理异常