我在Mac上安装了MonoDevelop 2.0。
我创建了一个新的控制台应用程序。
“Hello World”程序运行良好。
但我不能使用Linq。
using System.
未显示Linq
选项。
我该怎么办?
答案 0 :(得分:21)
您可能需要在解决方案视图中右键单击项目,执行Options
,Build
,General
,并将目标运行时设置为Mono / .Net 3.5
或更大
然后,您可以右键单击引用,执行“编辑引用”,并将对System.Core的引用添加到项目中。
答案 1 :(得分:6)
我在Ubuntu 9.04上运行Monodevelop 2.0和Mono 2.0,lambda和Linq运行良好。
与Thomas Levesque所说的相反,Mono确实存在System.Core
。扩展方法,lambda等都受支持。
您需要使用using System.Linq
。
public static void Example1()
{
List<string> people = new List<string>()
{
"Granville", "John", "Rachel", "Betty",
"Chandler", "Ross", "Monica"
};
IEnumerable<string> query = from p in people where p.Length > 5
orderby p select p;
foreach (string person in query)
{
Console.WriteLine(person);
}
}
答案 2 :(得分:1)
您的控制台应用程序是否引用了System.Core.dll
?您需要引用它才能使用System.Linq
。
答案 3 :(得分:1)
最新版本的Mono Develop确实支持linq。在项目中,您必须在Build / General / RuntimeVersion下选择3.5。之后,您可以添加System.Core引用。
答案 4 :(得分:0)
检查您的项目是否引用了System。 Xml.Linq 库
答案 5 :(得分:-2)
不确定LINQ是否在当前版本http://www.mono-project.com/Roadmap
中完全实现