错误 CS1061:“ICollection<>”不包含名为“SelectMany”的定义,也没有接受类型为“ICollection<>”的第一个参数的扩展方法“SelectMany”(是否缺少使用指令或程序集引用?)
Visual Studio 2015支持在调试模式下,使用即时窗口评估linq lambda表达式。我已经在控制台应用程序中进行了测试,在其中获取Process.GetProcesses()
,进入即时窗口并开始编写.Select
或.Where
。它可以正常工作。
然而,在我的项目中无法做到这一点。
我的断点在这行代码上:
return Dimensions.Values.SelectMany(dimension => dimension.Attributes)
.FirstOrDefault(dimensionAttribute => key.Equals(dimensionAttribute.Key));
运行F10可以正常工作。然而,当我尝试在立即窗口中逐部分运行相同的表达式,即Dimensions.Values.SelectMany(dimension => dimension.Attributes)
时,就会出现上述错误。
我是不是以一种不正确的方式进行评估?我错过了什么?
System.Linq
吗? - Gilad GreenSystem.Linq
。我必须告诉你它在namespace {}
之外并且在其顶部。我提到这一点是因为我想明确告诉它不在namespace {}
内。此外,F10正常工作。 - blogbydevSystem.Data.Entity
dll 引用到您的项目中,可能会解决您的问题! - Sunil Kumar