我无法使System.Linq(又名LINQ to Objects)工作。我正在使用Mono 2.4.4在Ubuntu 10 Lucid Lynx中运行MonoDevelop 2.2.1。
他们在网站上宣传他们实施了LINQ,但我甚至找不到Enumerable.Range
或ToArray()
。怎么了?
答案 0 :(得分:79)
我想你需要做的是:
之后你的代码应该编译并执行
希望这有帮助,尊重
答案 1 :(得分:4)
您使用的是gmcs
编译器吗? mcs
似乎无法编译包含Linq的代码。
$ cat a.cs
using System;
using System.Linq;
class Test
{
static void Main()
{
foreach (var i in new int[] { 1, 2, 3, 4, 5}.Where(n => n % 2 == 0))
{
Console.WriteLine(i);
}
}
}
$ gmcs a.cs
$ ./a.exe
2
4
要使用gmcs
进行编译,请执行the MonoDevelop FAQ所述的以下说明:
我可以用gmcs编译我的项目吗?
是。右键单击您的项目,选择“选项” - >“运行时”,然后从下拉列表中选择“2.0”。
答案 2 :(得分:1)
当你说“找不到”时你是什么意思?智能感知?许多linq方法都是扩展方法,monodevelop可能不支持intellisense中的方法。在这种情况下,你仍然可以使用它们,你的代码应该编译,它只是不在下拉列表中。