我们有一个运行在 WPF 和实体框架之上的大型业务应用程序。问题是我们在过去 2 周内遇到了问题,无法确定问题的根源。
异常被 DispatcherUnhandledException 捕获,我们从异常中获得的信息(通过电子邮件)是这样的:
mscorlib: Value cannot be null.
at System.Threading.Monitor.ReliableEnter(Object obj, Boolean& lockTaken)
at System.Threading.Monitor.Enter(Object obj, Boolean& lockTaken)
at System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString)
at System.Data.EntityClient.EntityConnection.Dispose(Boolean disposing)
at System.ComponentModel.Component.Finalize()
该异常每天“随机”抛出 4 或 5 次,并且仅来自我们拥有的 20 多个用户中的一个。我们无法弄清楚问题!堆栈跟踪没有提供太多信息,我们无法重现该问题。
我假设这发生在一个线程上,但我无法识别导致异常的线程,因为我们有很多 BackgroundWorkers 和异步的东西!
那么,我怎样才能获得有关异常的更多信息?
编辑:
没有任何内部异常。
此外,异常以分钟和小时为间隔抛出,例如:11:41、11:46、11:51 然后它运行良好,直到 18:03、18:07、18:11 然后没有异常抛出. 该分钟间隔发生的时刻也是随机的,与服务器或网络上的任何负载无关。