C# 在使用MVVM基础信使时,如何使VisualStudio调试器更有用? 我一直对MVVM基金会信使感到非常满意,但是我注意到当信使调用引起异常时,VisualStudio调试器似乎从来没有把我带到引起异常的代码行中(相反,它跳转到调用该操作的 Messenger < /代码>类中的方法)。这迫使我做了大量的搜索,以找到令人不快的代码行。(注意:我认为这都是Messenger使用弱引用的副作用,否则这是一件好事。)

C# 在使用MVVM基础信使时,如何使VisualStudio调试器更有用? 我一直对MVVM基金会信使感到非常满意,但是我注意到当信使调用引起异常时,VisualStudio调试器似乎从来没有把我带到引起异常的代码行中(相反,它跳转到调用该操作的 Messenger < /代码>类中的方法)。这迫使我做了大量的搜索,以找到令人不快的代码行。(注意:我认为这都是Messenger使用弱引用的副作用,否则这是一件好事。),c#,wpf,visual-studio,mvvm,mvvm-foundation,C#,Wpf,Visual Studio,Mvvm,Mvvm Foundation,问题: 在使用messenger时,有什么方法可以改善调试体验吗 VisualStudio中是否有一些设置或命令允许我直接跳转到导致异常的代码行 至少,您能建议一些有用的策略来快速隔离异常的原因吗 (注意:我使用的是Visual Studio 2008)我认为调试任何WPF绑定问题(特别是MVVM)的最佳方法是为正在绑定的组件分配一个转换器。 通过这种方式,您可以知道绑定是否(以及可能何时)发生。当然,使用messenger这种方法也可能有效 使用转换器的快速链接: 您看过调用堆栈窗口了吗?@J

问题:

在使用messenger时,有什么方法可以改善调试体验吗

VisualStudio中是否有一些设置或命令允许我直接跳转到导致异常的代码行

至少,您能建议一些有用的策略来快速隔离异常的原因吗


(注意:我使用的是Visual Studio 2008)

我认为调试任何WPF绑定问题(特别是MVVM)的最佳方法是为正在绑定的组件分配一个转换器。 通过这种方式,您可以知道绑定是否(以及可能何时)发生。当然,使用messenger这种方法也可能有效

使用转换器的快速链接:

您看过调用堆栈窗口了吗?@Jay,是的,但它通常只显示一组与Messenger相关的项目和原始事件处理程序……而不是实际导致问题的代码。