He pasado las últimas 2 horas investigando estos problemas en SO, y parece que nada funciona.Otro problema más sobre los conflictos de log4net 1.2.11
Tengo una solución que utiliza log4net 1.2.11, a través de NuGet. Funciona bien en mi estación de trabajo de desarrollo de 32 bits que ejecuta Windows 7. No se ejecuta en mi sistema de prueba de Windows 2008 R2 de 64 bits. El error que consigo es:
Excepción no controlada: System.IO.FileLoadException: No se pudo cargar el archivo o ensamblado 'log4net, versión = 1.2.11.0, Culture = neutral, PublicKeyToken = 669e0ddf0bb1aa2a' o uno de sus dependencias. La definición del manifiesto del ensamblaje ubicado no coincide con la referencia de ensamblaje.
Estoy buscando en el directorio de la aplicación en mi sistema de prueba. El archivo log4net.dll
allí es la versión 1.2.11.
La versión en el GAC era la versión 1.2.10. Lo he eliminado Había una versión en mi servidor de desarrollo que una vez más era otra cosa; Yo eliminé eso también. Yo he reconstruido; Me he redesplegado. He añadido
<dependentAssembly>
<assemblyIdentity name="log4net" publicKeyToken="669E0DDF0BB1AA2A" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.2.10.0" newVersion="1.2.11.0"/>
</dependentAssembly>
a mi archivo de configuración. Nada parece hacer una pequeña diferencia. Mi proyecto de implementación muestra la versión correcta y la firma del ensamblaje log4net que se está implementando.
No sé qué más puedo hacer, pero me frustra bastante que una biblioteca de registro impida que se ejecute mi aplicación.
¿Qué me he perdido?
Tuve que hacer lo mismo. El problema es cuando las dependencias requieren versiones conflictivas de log4net. –
Consulte la respuesta de @ keithl8041 para una solución real a este problema en lugar de una solución alternativa. :) –
@JohnySkovdal, en realidad yo también llamaría eso una solución. Eso significa que debe seguir usando una biblioteca en desuso y una clave de biblioteca anterior con un EOL claro. Eso limita tus opciones en el futuro. –