ReactiveUI.pdb未加载

时间:2016-01-13 01:19:46

标签: c# wpf reactiveui

我在我的WPF程序中使用ReactiveUI,WPF窗口可以初始化并正常显示,我在调试模式下,

但有时当我运行一些带按钮的命令代码绑定时,它会在下面显示错误,并且没有更多信息,所以我不知道异常的原因是什么:

  

ReaciveUI.pdb包含所需的调试信息(...)

enter image description here

在继续之后,会出现一个窗口,然后程序停止了:

  

ReactiveUI.dll

中出现未处理的“System.Exception”类型异常

enter image description here

如何处理这个问题?

1 个答案:

答案 0 :(得分:0)

我后来找到了问题的关键点,错误发生在

BtmCheckCmd = ReactiveCommand.CreateAsyncTask(
                canBtmCheckCmd,  //CanExecute
              async _ =>//Execute
              {
                  ProgressWinDow.RunCheckAndBarHandle();

                  MessageBox.Show("SomeThing");
              }

我找到了一种新的方法来检查我以前不知道的问题,以后我可以找到解决方案。

在我的情况下,当发生异常时,有时消息框显示(有时不显示),然后如果消息框显示,则在单击“确定”和“异常窗口显示”之后显示,如果这样做我无法找到我的部分代码解决了问题,

但是如果我在消息框显示时单击暂停(不是单击“确定”,而是在msgbox显示时单击调试模式下的暂停),那么它将转到它执行的代码部分,

enter image description here

通过这样做,我发现" Messagebox show"在

的代码块中
  

异步

在代码部分,并且在异步中有两个方法,所以它应该是这个问题的原因,也许在同时异步两个方法时出错了。

在我的情况下,Messagebox最初只是用来测试,所以我删除了MessageBox并解决了问题。

在多线程中找到问题的另一种方法是在调试模式下,

并设置断点,然后在进入断点时执行该部分代码,然后转到顶部的ToolBar选择:

  

调试和GT;> Windows和GT;>线程

enter image description here

然后在线程窗口中可以看到线程在做什么