繁体   English   中英

Visual Studio 2015 在条件断点中使用 Linq

[英]Visual Studio 2015 using Linq in conditional breakpoint

是否可以在条件断点内使用 Linq?

当以下条件为真时,我试图中断:

parentElement.ChildElements.Any(c => c.Id == 1)

当调试器被击中时,会显示以下错误消息

调试器无法计算此表达式。

如果问题与使用.Any()有关,我已经尝试了以下条件

parentElement.ChildElements.Where(c => c.Id == 1).Count() > 0

这导致显示与上面相同的错误。

我知道解决方法是以下代码

#if DEBUG
if(parentElement.ChildElements.Any(c => c.Id == 1))
{
    System.Diagnostics.Debugger.Break();
}
#endif

但是,理想情况下,我不想更改代码来放置调试器。

此问题是由未在 Visual Studio 中启用的Use Managed Compatibility Mode选项引起的。

选中此选项后,断点将按预期执行。

请参阅答案以了解如何在 Visual Studio 中启用此选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM