Ошибка компилятора CS1935
Обновлен: Ноябрь 2007
Сообщение об ошибке
Невозможно найти реализацию шаблона запроса для исходного типа "тип". Метод "метод" не найден. Возможно, отсутствует ссылка на "System.Core.dll" или директиву using для "System.Linq"
Could not find an implementation of the query pattern for source type 'type'. 'method' not found. Are you missing a reference to 'System.Core.dll' or a using directive for 'System.Linq'?
Тип источника в запросе должен быть IEnumerable, IEnumerable<T>, производным типом или типом, для которого кто-либо еще реализовал стандартные операторы запроса. Если тип источника – IEnumerable или IEnumerable<T>, то необходимо добавить ссылку на system.core.dll и директиву using для пространства имен System.Linq, чтобы включить методы расширения стандартных операторов запроса в область. Пользовательские реализации стандартных операторов запроса следует включить в область таким же образом с директивой using и, в случае необходимости, со ссылкой на сборку.
Чтобы исправить эту ошибку
- Добавьте необходимые директивы using и ссылки в проект.
Пример
В следующем примере кода возникает ошибка CS1935, поскольку происходит раскомментирование директивы using для System.Linq:
// 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;
}
}