log4net 버전 1.2.10.0에 의존하는 몇 가지 프레임 워크를 사용하는 asp.net 4.0 프로젝트가 있습니다. 오늘 저는 log4net 버전 1.2.11.0에 의존하는 새로운 프레임 워크를 포함하려고 노력했습니다.
log4net 1.2.10.0에는 publickeytoken = 1b44e1d426115821이 있습니다.
log4net 1.2.11.0에는 publickeytoken = 669e0ddf0bb1aa2a가 있습니다.
이들은 다르기 때문에 web.config의 런타임 요소를 통해 어셈블리 리디렉션 (모든 프레임 워크가 동일한 버전의 log4net을 사용하도록 함) 또는 코드베이스 (새 프레임 워크 만 버전 1.2.11.0을 사용하도록 함)를 사용할 수 없습니다.
여기서 내 옵션은 무엇입니까?
(그리고 왜 log4net이 버전간에 공개 키 토큰을 계속 변경하는 삐 소리가 나는지 이해합니다. 키를 잃어버린 것이 버전 1.2.9.0과 1.2.10.0 사이의 전환의 이유 였음을 이해합니다. 그들은 키를 다시 잃어 버렸나요? 필요한 경우 안전하게 보관하기 위해 ...)
편집 : 좋아, 그래서 log4net 사람들은 두 개의 키로 릴리스하는 것이 좋은 생각이라는 생각을 분명히 가지고 있었지만 사용 하는 모든 프레임 워크가 선호하는 두 가지 버전 에 동의해야 함을 의미 합니다. 동일한 appdomain에서 나란히. 이 끔찍한 아이디어를 찾는 유일한 사람입니까? 모두가 이렇게하면 모든 것이 무너질 것입니다.
Edit2 : 내가 언급했듯이 비즈니스 코드에서 log4net을 사용하지 않지만 1.2.10.0에 의존하는 여러 프레임 워크를 사용하고 있으며 1.2.11.0 (새 키 ), 따라서 Stefans 대답은 적용되지 않습니다. 새로운 프레임 워크는 이전 키가 아닌 새 키를 예상하기 때문입니다.