C# с использованием системы.Ошибка в LINQ

Почему может " использовать систему.Linq " вызывает следующую ошибку?

тип или имя пространства имен 'Linq' делает не существует в пространстве имен System''

9 ответов


ссылка System.Core

и есть другие, которые также объединяют это пространство имен - но это основной на .Net 3.5 и выше.

Если вы проект в настоящее время .Net 2.0, скажем, и вы используете правильную версию VS (2005 и выше) - вы можете просто щелкнуть правой кнопкой мыши на свойствах proejct; и изменить "целевую версию фреймворка" на 3.5. System.Core затем станет доступным.

Если вы не видите этого в опциях-тогда я думаю, вы используете более старый VS


наиболее вероятной причиной является то, что вы используете неправильную версию .NET Framework.


попробуйте добавить System.Core сборка для вашего проекта


вы получите эту ошибку, если у вас нет системы".Ядро.dll " referenced (сборка, содержащая основные API LINQ).


возможно, вы нацелены на более старую структуру, Linq пришел с 3.5 IIRC.


вы используете более низкую версию .NET Framework, чем 3.5, для компиляции исходного кода или вы не добавили систему.Основная сборка для вашего проекта.


тип вручную using System.Linq в начале проекта вы не сможете найти это пространство имен в диалоговом окне Добавить ссылку. Если вы все еще получаете ошибку, попробуйте добавить ссылку System.Core. Если вы получаете сообщение об ошибке, которое уже было передано, вы можете выгрузить проект, а затем отредактировать файл csproject, вручную скопируйте ссылку на System tag и вставить и изменить имя на System.Core и перезагрузить проект.


в моем случае единственное, что сработало, было:

добавление нового элемента бритвы (например, MVC 5 View Page)

Add new Razor item

это автоматически вытягивает некоторые пакеты NuGet

installed NuGet packages

пакет, который делает System.Linq доступно для просмотра Razor IntelliSense, кажется,Microsoft.AspNet.WebPages.