3ème partie des bibliothèques de consulter les différentes versions de log4net.dll
J'ai deux bibliothèques différentes critique à ma demande qui dépendent de différentes versions de log4net.dll. Essayer les deux dll dans mon dossier bin permettre à l'erreur lors de la 3ème partie de la pièce, je suis aide est appelée:
Impossible de charger le fichier ou l'assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821' ou une de ses dépendances. L'assemblée manifeste définition ne correspond pas à la référence d'assembly. (Exception de HRESULT: 0x80131040)
Est-il possible que l'application peut faire référence à la fois de la dll? La troisième partie de dll sont des Windsor conteneur IOC et de Paypal API, à la fois critique à cette application.
OriginalL'auteur Joe B. | 2010-12-07
Vous devez vous connecter pour publier un commentaire.
Cette question peut avoir quelques réponses qui pourront vous aider.
Le référencement de 2 versions différentes de log4net dans la même solution
Sinon, si c'est de Windsor de la fonction de Journalisation, qui dépend de log4net et pas de Windsor lui-même, vous pourriez être capable d'écrire votre propre log4net abstraction basée sur la version de log4net utilisé par l'API PayPal et disent à Windsor à l'utiliser à la place.
Voici l'emplacement de la log4net l'abstraction dans le Château du référentiel de code source:
https://github.com/castleproject/Castle.Core/tree/master/src/Castle.Services.Logging.log4netIntegration
Je n'utilise pas du Château, donc je ne peux pas vous dire comment le configurer pour faire référence à vos propres log4net abstraction, mais je parie qu'il n'est pas trop difficile (en supposant que c'est possible).
Voici un lien vers un autre post ici AFIN que décrit la configuration de Château avec log4net. Il parle aussi brièvement sur l'écriture de journalisation personnalisé fonction de journalisation:
L'enregistrement à l'aide Château.Des installations.Journalisation et de log4net
Bonne chance!
OriginalL'auteur wageoghe
Un autre itinéraire pour aller, je pense, mais je ne l'ai jamais fait moi-même, est de les mettre dans le GAC.
Je crois que vous pouvez avoir différentes versions de la même dll dans le GAC, et vous devriez être ok.
Mais j'ai aussi peut-être fou 🙂
Vous rencontrez un problème d'évolutivité en ce que vous avez à effectuer le GAC installer sur chaque machine pour cela. Les mettre dans la .config permet d'être déployé avec l'application.
OriginalL'auteur CubanX