Sina asefi Ответов: 3

Ошибка не удалось найти реализацию шаблона запроса для системы типа источника'.Коллекции.Универсальный.Список'. "Где" не найдено.


Всем привет
я написал этот пример:
List<int> lstIndexes = new List<int>();
IEnumerable<int> resault =(from index in lstIndexes where index == newIndex select index);

но в нем есть ошибка:
Could not find an implementation of the query pattern for source type 'System.Collections.Generic.List<int>'.  'Where' not found.

В чем моя проблема?
Спасибо.

3 Ответов

Рейтинг:
27

Sergey Alexandrovich Kryukov

Вам нужно 1) добавить ссылку на сборку "System.Core" (добавляется в новый проект, созданный из шаблона в Visual Studio по умолчанию), 2) использовать пространство имен System.Linq:
http://msdn.microsoft.com/en-us/library/system.linq.aspx[^].

—СА


Рейтинг:
1

Sanju Uthaiah Bollera

Поскольку LINQ является функцией .NET 3.0, вы должны создать проект, выбрав версию 3.0
Пожалуйста, проверьте, если вы выбрали менее 3,0
Если вы хотите знать, какая версия или если вы хотите изменить .сетевая версия

1.Щелкните правой кнопкой мыши на вашем проекте и перейдите в раздел свойства проекта(Последний вариант)

2. На вкладке приложение посмотрите, если "целевой фреймворк 3.0", если он меньше 3.0, пожалуйста, измените его на больше 3.0

3. Закройте текущую вкладку и добавьте систему.Пространство имен Linq и начните работать над "LINQ" :)

Спасибо.


Рейтинг:
0

Graeme_Grant

Я знаю, что на этот вопрос был дан ответ, но есть очевидное быстрое решение, которое было упущено из виду.

В VS2015 (и VS2013?) поместите курсор в любом месте строки с волнистой красной линией, используя сочетание клавиш CTRL+. (Клавиша CTRL + '.' (точка)) или щелкните правой кнопкой мыши и выберите "Быстрые действия и рефакторинг...", если правильная библиотека DLL связана, IntelliSense должен дать вам возможность быстро добавить правильную библиотеку DLL. Using {namespace}; ссылка.