Question

J'utilise Visual Studio 2010 et en utilisant le déploiement Web pour promouvoir le site .Net MVC à des environnements spécifiques. Je l'ai installé Elmah, et cela a fonctionné très bien sur mon environnement DEV, mais quand je poussais test, je suis arrivé parce que des exceptions SQLite n'a pas été un bon format.

Je n'utilise SQLite en Elmah ou autrement, que je sache. J'ai enlevé tous les refernces visibles à SQLite, et je l'ai supprimé le .dll de tous les répertoires bin configuration. Mais il obtient toujours inséré avec chaque version. Je me rends compte du problème d'exception est que SQLite ne peut pas être construit pour CPU Tout, et mes environnements x86 à partir varient x64. Mais je préfère SQLite de ne pas être encore présent.

J'ai depuis Elmah désinstallés et SQLite est encore inséré dans le répertoire \ bin. Je réinstallée maintenant Elmah, et je supprimer manuellement le sqlite.dll de \ bin après chaque construction. Comment puis-je déterminer la cause SQLite à insérer dans mon \ bin après chaque build?

Était-ce utile?

La solution

Si vous ne l'utilisez SQLite, vous devez supprimer simplement de source emplacement à partir duquel vous importés la référence. Pour étendre à ce sujet, supposons que vous avez téléchargé et décompressé ELMAH sur le chemin C:\ELMAH sur votre disque local. Lorsque vous avez ajouté une référence à ELMAH, vous avez probablement dirigé vers l'une des versions de la plate-forme sous C:\ELMAH\bin, comme C:\ELMAH\bin\net-2.0\Release. De C:\ELMAH\bin sous-répertoires, supprimer tous les autres ensembles indésirables et les fichiers à l'exception Elmah.dll, Elmah.pdb et Elmah.xml. Au sens strict, vous ne même pas besoin de ces deux derniers, mais ils sont tout de même recommandé. Une fois que vous avez fait cela, vous pouvez ajouter une référence à Elmah.dll à votre projet dans Visual Studio et aucune des dépendances aurez tiré dans le répertoire bin de votre application. Vous devrez peut-être supprimer votre répertoire bin et re-construire votre projet pour se débarrasser d'une copie rassis de System.Data.SQLite.dll d'une référence précédente. ELMAH continuera à fonctionner correctement sans System.Data.SQLite.dll aussi longtemps que vous ne l'utilisez pas Elmah.SQLiteErrorLog comme votre magasin de journal d'erreur.

Comme par d'autres suggestions, vous ne devriez pas avoir à supprimer les références à SQLite des sources Elmah et de faire une construction privée.

Autres conseils

Je pense que Visual Studio détecte que SQLite est requis par Elmah et copie si elle le trouve. Pour achive le même but que vous j'ai enlevé tous les trucs SQLite à partir du code source Elmah et Reconstruit il. Il est tout à fait indolore chose à faire ...

Utilisez un éditeur de texte avec « trouver en fichiers » soutien rechercher tous vos fichiers de projet pour « sqlite ». Quelque chose doit être faisant référence.

Je sais que c'est une vieille question, mais j'ai un problème similaire et a atterri ici, donc peut-être ma réponse est toujours utile pour les autres.

Ajoutez simplement ceci à votre fichier de projet de votre application web dans un élément PropertyGroup preferred:

<ExcludeFilesFromDeployment>bin\System.Data.SQLite.dll</ExcludeFilesFromDeployment>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top