我试图了解为什么在断点上无法检查 LINQ 查询的返回值。扩展结果视图只会显示“无法评估儿童”。
另一方面,在代码中使用 foreach 枚举或使用 ToList 确实可以在调试器中检查集合。
我会认为,就像它在大多数其他情况下所做的那样,在调试器中扩展结果等同于集合上的 ToList,这就是我期望它工作的原因。唯一有点不同的是,我从 EXE 调用到 DLL,DLL 是定义对象的位置以及构建和返回的初始查询。但我看不出是这样的。
var timeboxes = assetRepo.ActiveTimeboxes();
// This can't be evaluated in the debugger
var stories = timeboxes.SelectMany(c => assetRepo.AllStories(c));
// This can be inspected in the debugger
var executedStories = stories.ToList();