Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 30883|Répondre: 1

[Source] Résolution des conflits de la version DLL de référence .net/c#

[Copié le lien]
Publié sur 04/06/2018 16:02:54 | | | |
Échec de charger le fichier ou l’assembleur « Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e » ou l’une de ses dépendances. La définition du manifeste d’assemblage trouvée ne correspond pas à la référence d’assemblage. (Exception à HRESULT :0x80131040)

Description : Une exception non prise en charge s’est produite lors de l’exécution de la requête web en cours. Vérifiez les informations de la pile pour obtenir des détails sur l’erreur et d’où elle vient dans votre code qui a causé l’erreur.

Détails d’exception : System.IO.FileLoadException : Échec de charger le fichier ou l’assembleur « Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e » ou l’une de ses dépendances. La définition du manifeste d’assemblage trouvée ne correspond pas à la référence d’assemblage. (Exception à HRESULT :0x80131040)

Erreur de source :

Une exception non prise en charge a été générée lors de l’exécution de la requête web en cours. Vous pouvez utiliser les informations suivantes sur la pile d’exception pour déterminer la cause de l’anomalie et son lieu de réapparition.

Trace de charge d’assemblage : Les informations suivantes peuvent aider à déterminer pourquoi l’assemblage « Common.Logging, Version=2.1.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e » n’a pas été chargé.


Parfois, nous voyons l’erreur ci-dessus.

Cause de l’erreur

Le Projet A fait référence à xxx.dll, le Projet B fait également référence à xxx.dll, et le Projet A fait référence au Projet B, comme le montre la figure ci-dessous :



Le projet A et le projet B font tous deux référence à xxx.dll, mais le projet A désigne une version supérieure de la DLL, et le projet B une version inférieure de la DLL,

Solution

<bindingRedirect>element, redirigez une version assembleur vers une autre.

vieilleVersion       

  • Propriétés requises
  • Précise la version de l’assemblage initialement demandée. Le numéro de version d’assemblage est au format major.minor.build.revision. Chaque partie de ce numéro de version a une valeur valide comprise entre 0 et 65535.
  • Vous pouvez également spécifier une plage de versions dans le format suivant :
  • n.n.n.n-n.



newVersion

  • Propriétés requises.
  • Spécifie la version de l’assembleur à utiliser à la place du format de version initialement demandé : n.n.n.n
  • Cette valeur peut spécifier une version antérieure à oldVersion.



Lien de documentation :https://docs.microsoft.com/zh-cn ... ingredirect-element

Exemples officiels :



Donc, ma solution de contournement est de configurer ça ainsi dans web.config :







Précédent:Je suis là, s’il vous plaît, faites plus attention et apprenez les uns des autres
Prochain:Solution : L’installateur utilisé pour installer Visual Studio est incomplet
 Propriétaire| Publié sur 22/10/2022 10:03:58 |
[Opération pratique] Conflits entre la référence à différentes versions de DLL qui dépendent de redirections
https://www.itsvse.com/thread-10376-1-1.html
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com