С .NET 2.0 до 3.5 все запущены на CLR 2.0, все материалы LINQ - это всего лишь куча библиотек. Если вы включите библиотеки DLL, отсутствующие в вашей версии фреймворка, все будет работать нормально.
Как говорит Патрик, ключевыми 3.5 DLL являются System.Core.dll (которые предоставили System.Linq) и System.Data.Linq.dll (для Linq-to-SQL).
Если вы сделаете это, я думаю, вам нужно System.dll, по крайней мере, .NET 2.0SP1, я считаю.
LINQBridge, как цитирует Марк, работает путем повторной реализации функциональных возможностей, но только для Linq-to-Objects, на которые я верю.
Другой вариант - использовать эти же DLL (System.Core.dll и System.Data.Linq.dll) из проекта Mono. Они перепроверили все LINQ. Материал Linq-to-Sql, возможно, немного незрелый, но он имеет достоинство работы с другими базами данных, а не только с MSSQL.
http://mono-project.com/Main_Page
Это устраняет любой вопрос о законности распространения библиотеки DLL Microsoft с приложением.
Когда я говорю, что Mono реализовала все LINQ, я имею в виду, что он поддерживает Linq-to-Objects, Linq-to-XML и Linq-to-Sql (через проект DBLinq). Последняя версия Mono (по состоянию на июль 2010 года) составляет 2,6,7, и именно там я получаю сборки. – Justin
Это лучший ответ в вопросе до сих пор! –
О, я должен добавить, что вам также нужен файл System.Xml.Linq.dll, если вы хотите сделать Linq-to-XML. Патрик обманул меня своими силами джедаев. – Justin