Я использую Visual Studio 2010 и использую веб-развертывание для продвижения сайта.Net MVC определенные среды. Я установил Elmah, и он работал отлично на моей среде DEV, но когда я продвинул ТЕСТ, я получил исключения, потому что SQLite не был хорошим форматом.
Я не использую SQLite в Elmah или иначе что я знаю о. Я удалил весь видимый refernces к SQLite, и я удалил .dll из всех каталогов bin конфигурации. Но это все еще вставляется с каждой сборкой. Я понимаю, что проблема исключения состоит в том, что SQLite не может быть создан для ЦП Никто, и мои среды варьируются от x86 до x64. Но я предпочел бы, чтобы SQLite даже не присутствовал.
Я с тех пор удалил Elmah, и SQLite все еще вставляется в \bin каталог. Я теперь переустановил Elmah, и я вручную удаляю SQLite.dll из \bin после каждой сборки. Как я могу определить то, что заставляет SQLite быть вставленным в мой \bin после каждой сборки?
Если вы не используете SQLite, вам нужно просто удалить его из источника , откуда вы импортировали ссылку. Чтобы расширить это, предположим, что вы загрузили и разархивировали ELMAH по пути C: \ ELMAH
на вашем локальном диске. Когда вы добавляли ссылку на ELMAH, вы, вероятно, указывали на одну из версий платформы в разделе C: \ ELMAH \ bin
, например C: \ ELMAH \ bin \ net-2.0 \ Release
. Из подкаталогов C: \ ELMAH \ bin
удалите все другие нежелательные сборки и файлы, кроме Elmah.dll
, Elmah.pdb
и Elmah. xml
. Строго говоря, последние два вам даже не нужны, но тем не менее они рекомендуются. Как только вы это сделаете, вы можете добавить ссылку на Elmah.dll
в свой проект в Visual Studio, и ни одна из зависимостей не попадет в каталог вашего приложения bin
. Возможно, вам придется удалить каталог bin
и перестроить проект, чтобы избавиться от устаревшей копии System.Data.SQLite.dll
из предыдущего справочника. ELMAH продолжит нормально работать без System.Data.SQLite.dll
, пока вы не используете Elmah.SQLiteErrorLog
в качестве хранилища журнала ошибок.
Согласно другим предложениям, вам не нужно удалять ссылки на SQLite из источников ELMAH и делать частную сборку.
Используйте текстовый редактор с поддержкой поиска в файлах для поиска во всех файлах вашего проекта слова sqlite. Что-то должно ссылаться на это.
Я думаю, Visual Studio обнаружит, что SQLite требуется Elmah, и скопирует его, если найдет. Чтобы достичь той же цели, что и вы, я удалил все материалы SQLite из исходного кода Elmah и перестроил его. Это довольно безболезненно ...