编译器错误 CS1935
更新:2007 年 11 月
错误消息
找不到源类型“type”的查询模式的实现。未找到“method”。是否缺少对“System.Core.dll”的引用或“System.Linq”的 using 指令?
查询中的源类型必须是 IEnumerable、IEnumerable<T>、派生类型或您或他人已为其实现标准查询运算符的类型。如果源类型是 IEnumerable 或 IEnumerable<T>,则必须添加对 system.core.dll 的引用和 System.Linq 命名空间的 using 指令,以便将标准查询运算符扩展方法放入范围中。标准查询运算符的自定义实现也必须以相同的方式,通过 using 指令及对程序集的引用(如果需要)放入范围中。
更正此错误
- 添加所需的 using 指令以及对该项目的引用。
示例
下面的代码生成 CS1935,因为 System.Linq 的 using 指令已被注释掉:
// cs1935.cs
// CS1935
using System;
using System.Collections.Generic;
// using System.Linq;
class Test
{
static int Main()
{
int[] nums = {0,1,2,3,4,5};
IEnumerable<int> e = from n in nums
where n > 3
select n;
return 0;
}
}