【发布时间】:2015-10-22 09:54:03
【问题描述】:
在调试过程中探测当前状态时,即时窗口是非常有用的工具。我了解到通过使用问号,可以在其中做更多事情,如in this post 所示。
但是,我仍然不知道如何在那里执行 LINQ 查询(包括 lambda 表达式)。我也未能执行 foreach 语句。
执行以下语句时:
?(things.Select(thing=>thing.Id);)
?(foreach(var thing in things);)
我收到以下错误:
表达式不能包含 lambda 表达式
无效的表达式术语“foreach”
(如何)我可以在即时窗口中执行这些操作?
VS Gallery 中也有一个工具,但据说它只适用于 VS05 和 VS08,大多数程序员很久以前就放弃了。我正在寻找适用于 VS13 和/或 VS15 的东西。
【问题讨论】:
-
我很确定您不能在即时窗口或快速观看中执行此操作。我 100% 的猜测是运行时编译器的解释太复杂了
-
难道 vs2015 不允许在监视窗口中调试 lambda? dirkstrauss.com/… 还说here 你可以使用监视/即时窗口。
-
@StasIvanov 您介意指出重复我的问题的部分吗?我看不到相似之处(除了一些使用的词)......
-
@KonradViltersten 我认为您的问题是关于在调试/立即/快速监视窗口中执行 lambda。并且已经在提到的问题中得到了回答。还有一个答案是您实际上可以在 VS2015 中执行此操作,但不能在早期版本中执行。但也许我误解了你的问题。
标签: c# linq visual-studio lambda immediate-window