C# 调试器监视窗口中的VS2015 LINQ

C# 调试器监视窗口中的VS2015 LINQ,c#,linq,visual-studio,visual-studio-2015,watch-window,C#,Linq,Visual Studio,Visual Studio 2015,Watch Window,根据我的消息来源,LINQ应该在调试器的监视窗口中工作。但是,我仍然收到以下错误: 错误CS1061:“IEnumerable”不包含“Where”的定义,并且找不到接受类型为“IEnumerable”的第一个参数的扩展方法“Where”(是否缺少using指令或程序集引用?) 我必须打开一些选项吗?如何在“监视”窗口中启用LINQSystem.Linq通过使用包含在我当前调试的文件中。我发现了问题:Mono.Cecil重写的程序集目前不支持调试器中的扩展方法求值(包括Linq扩展方法)。一旦有

根据我的消息来源,LINQ应该在调试器的监视窗口中工作。但是,我仍然收到以下错误:

错误CS1061:“IEnumerable”不包含“Where”的定义,并且找不到接受类型为“IEnumerable”的第一个参数的扩展方法“Where”(是否缺少using指令或程序集引用?)


我必须打开一些选项吗?如何在“监视”窗口中启用LINQ
System.Linq
通过使用包含在我当前调试的文件中。

我发现了问题:Mono.Cecil重写的程序集目前不支持调试器中的扩展方法求值(包括Linq扩展方法)。一旦有了解决办法,我将扩展这个答案


这是Mono.Cecil GitHub问题的链接:

在运行时运行代码时它能工作吗?你说的“在运行时”是什么意思?我想知道你是否缺少使用的
,但它似乎不能。。。我还注意到您正在尝试vs 2015。当错误发生时,您应该能够将鼠标悬停在Linq变量上以查找当前值。该错误指示Linq变量不是列表对象。只有当变量是可以枚举的列表时,Where才起作用。如果对象是类,则必须将该类设为IEnumerable,或将列表对象添加到可枚举的类中。否,所有设置都相同。我还创建了一个示例解决方案,在它工作的地方,我当前的解决方案似乎有一些特定的东西,它阻止了调试器的监视窗口中的LINQ…对于任何感兴趣的人来说:这个问题现在在cecil的主分支上得到了解决。