Visual Studio QuickWatch - 如何在 QuickWatch 窗口中快速查找集合中的项目

cd4*_*415 5 debugging watch visual-studio-debugging visual-studio-2013

我有一个名为 m_Tree 的可观察集合。它包含具有属性 Name 的 Planet 类型的对象。该集合中可能有数百个项目。如何在 VS 的 QuickWatch 窗口中快速找到 Planet.Name="Jupiter"?

目前,我必须手动展开集合中的每辆车并查找其名称,但这可能会令人不安。据我所知,Lambda 表达式或 LINQ 在 QuickWatch 中不起作用。

这是我用 LINQ 尝试过的

from item in m_Tree where item.Name == "Jupiter" select item
Run Code Online (Sandbox Code Playgroud)

但 QuickWatch 显示错误

from item in m_Tree where item.Name == "Jupiter" select item
Expression 不能包含查询表达式

Sна*_*ƒаӽ 1

虽然我的回答不是要在 QuickWatch 中执行此操作,但它可能会帮助您完成工作。

在调试模式下,您可以使用立即窗口来执行此操作。如果尚未打开,请打开立即窗口,然后执行查询。

var jupiters = (from item in m_Tree where item.Name == "Jupiter" select item).ToList();
jupiters  // prints the objects in the Immediate Window
Run Code Online (Sandbox Code Playgroud)

我经常使用立即窗口,发现它非常有帮助。希望对你也有帮助。