Impossible de charger le fichier ou l'assembly 'Microsoft.Practices.EnterpriseLibrary.Common' ou l'une de ses dépendances
J'ai cherché sur google pour cela et ne pouvait pas trouver la solution au problème.
Mon Site internet les références DAL (dll personnalisée) les références de l'Entreprise de la Bibliothèque de Composants d'Accès aux Données.
J'ai ajouté de la Bibliothèque d'Entreprise de la NuGet Package Manager
et quand j'essaie de construire le Site web de cette compilation d'erreur apparaît:
Erreur 44 n'a pas Pu charger le fichier ou l'assembly " Microsoft.Les pratiques.EnterpriseLibrary.Commun' ou une de ses dépendances. L'assemblée manifeste définition ne correspond pas à la référence d'assembly
J'ai essayé le réglage de la Copy Local = True
dans la DAL pour le Enterprise Library dlls
et les dll sont transférés dans le répertoire Bin du site web avec DAL dll
mais toujours l'erreur apparaît.
Quelqu'un peut-il me guider sur ce....
source d'informationauteur Naveed Butt
Vous devez vous connecter pour publier un commentaire.
Le problème est que la DLL que vous utilisez et celui qui est référencé dans votre projet sont différents. Je ne suis pas sûr de ce que la différence dans le manifeste est, mais il pourrait être la version et/ou de la clé publique.
Vous avez un couple de choses à essayer:
Ouvrez les propriétés de la référence de la DLL dans votre projet et de définir la Version Spécifique à false.
Supprimer la référence, supprimer les DLL dans le dossier bin, et re-ajouter la référence.
Vous pouvez également avoir un différent/version incorrecte dans votre GAC. Afin de s'assurer que vous êtes toujours à l'aide d'un spécifique, version connue de créer un dossier assemblys par rapport à votre répertoire de projet, copier la dll dans le dossier, et d'ajouter une référence à la DLL dans le répertoire d'assemblys plutôt que dans le GAC ou ailleurs sur votre machine. Cela permettra d'assurer que seule la version spécifique que vous avez ciblé pour l'application sera utilisée plutôt que d'une version mise à jour sur votre ordinateur à une date ultérieure.
NuGet CommonServiceLocator
Cette dll est susceptible d'être dans le GAC sur les ordinateurs des développeurs dans le cadre de certaines fenêtres d'installation de l'application (mes meilleures estimations sont Visual Studio ou SSM).
C'est pourquoi nous sommes susceptibles d'obtenir des avertissements ou des erreurs sur la machine de compilation que nous essayons de notre mieux pour garder le GAC aussi propre que le serveur de production.
Pour télécharger le fichier manuellement, vous pouvez aller à https://servicelocation.codeplex.com/
Pour corriger l'accumulation d'avertissements et d'erreurs, il vous suffit d'exécuter une commande NuGet pour installer le CommonServiceLocation paquet. Le colis contient un seul fichier dll. Microsoft a publié seulement 1 version (1.0.0.0) de ce fichier depuis 2008. Le fichier est entièrement compatible avec tous les .NET les versions et toutes les Unité versions.
Merci pour cette information
J'ai eu le même problème, j'ai mis à jour le Cadre de 2.0 à 4.0, j'ai essayé tout ce que vous avez mentionné, mais la solution a été de définir la PublicKeyToken valeurs pour chacun des EnterpriseLibrary de référence dans le Web.Fichier de configuration
Même problème!
J'ai juste effacé le construire et de reconstruire le projet. Donc, tous les vieux trucs ont disparu et les versions correctes remplacé. Résolu.
J'ai été en mesure de résoudre ce problème en supprimant de TOUS l'enregistrement des références dans l'application.fichier de config::
ie:
Devient:
Ce n'est pas l'idéal, mais ça fonctionne...
L'Entreprise Outil de Configuration de Bibliothèque, définit les valeurs de retour, de sorte que vous besoin de regarder pour cela. Je sais qu'il y est une façon de dire au fichier de configuration d'accepter ces dépareillés paramètres -- mais je ne suis pas sûr de savoir comment.