我试图理解为什么在断点时无法检查 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();
不可能从 VS 调试,但我有LINQPad http://www.linqpad.net/这有时可以帮助你。
最好的选择是将查询拆分为小语句。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)