Tenemos un proyecto asp.net 4.0 que utiliza un par de marcos que dependen de la versión 1.2.10.0 de log4net. Hoy traté de incluir un nuevo marco que depende de log4net versión 1.2.11.0, me he quedado atascado desde entonces:
log4net 1.2.10.0 tiene publickeytoken = 1b44e1d426115821
log4net 1.2.11.0 tiene publickeytoken = 669e0ddf0bb1aa2a
Dado que estos son diferentes, no puedo usar redirecciones de ensamblaje (para que todos los marcos usen la misma versión de log4net) o base de código (para que solo el nuevo marco use la versión 1.2.11.0) a través del elemento de tiempo de ejecución en web.config.
¿Cuáles son mis opciones aquí?
(y por qué diablos log4net sigue cambiando publickeytokens entre versiones, según tengo entendido, una clave perdida fue la razón del cambio entre la versión 1.2.9.0 y 1.2.10.0, ¿perdieron la clave una vez más? para mantenerlo seguro si lo necesitan ...)
Editar: Ok, entonces los chicos de log4net aparentemente tenían la idea de que liberar con dos claves era una buena idea, pero eso significa que cada marco que utiliza debe acordar cuál de los dos sabores prefieren, o esos marcos no pueden funcionar al lado uno al lado del otro en el mismo dominio de aplicación. ¿Soy el único que encuentra esto como una idea horrible? Si todos hicieran esto, entonces todo se derrumbaría, ¿verdad?
Edit2: como dije, no estoy usando log4net en mi código comercial, pero uso varios marcos que dependen de 1.2.10.0, y el problema surgió cuando intenté usar un nuevo marco que dependía de 1.2.11.0 (nueva clave ), por lo que la respuesta de Stefan no se aplica, porque el nuevo marco esperará la nueva clave, no la anterior