Я пытаюсь создать System.Data.SQLite в Visual Studio, используя исходный код, загруженный из
http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
Мне удалось создать решение, но когда я попытался сослаться на System.Data.SQLite.dll из проекта с TargetFramework = 3.5, я получил следующее сообщение:
«System.Data.SQLite.dll или одна из его зависимостей требует более поздней версии .NET Framework, чем та, которая указана в проекте».
Я заметил, что все их управляемые проекты (System.Data.SQLite.2010, System.Data.SQLite.Linq.2010 и System.Data.SQLite.Module.2010) были настроены на .NET 4.0. Затем я изменил их все на ссылку 3.5, перестроил и попробовал снова. После этого я смог сослаться на проект, однако получаю новую ошибку времени выполнения:
«Не удалось загрузить файл или сборку 'System.Data.SQLite' или одну из его зависимостей. Эта сборка создана средой выполнения более новой, чем текущая загруженная среда выполнения, и не может быть загружена».
Я открыл .dll с помощью ildasm, и в манифесте действительно написано // Версия метаданных: v4.0.30319 Для меня это не имеет смысла, потому что в их документации четко указано, что он должен работать с .NET 2.0:
". Мы хотим поставлять управляемые двоичные файлы, которые полагаются на .NET Framework 2.0 с пакетом обновления 2 (или для сборки LINQ, .NET Framework 3.5 с пакетом обновления 1). .NET Framework 2.0 очень широко развернута, и на двоичные файлы, созданные для нее, также можно ссылаться и успешно используется в проектах, использующих .NET Framework 4.0 ».
http://system.data.sqlite.org/index.html/doc/trunk/www/build.wiki.
Это решение - своего рода кошмар с множеством целевых файлов и множеством настраиваемых параметров сборки. Я не совсем уверен, где устанавливаются целевые рамки. Я предполагаю, что где-то происходит какое-то волшебство.
Есть ли у кого-нибудь опыт создания этого проекта? Любая помощь будет оценена. Спасибо!