У нас есть проект asp.net 4.0, который использует пару фреймворков, зависящих от log4net версии 1.2.10.0. Сегодня я попытался включить новую структуру, которая зависит от log4net версии 1.2.11.0, с тех пор я застрял:
log4net 1.2.10.0 имеет publickeytoken = 1b44e1d426115821
log4net 1.2.11.0 имеет publickeytoken = 669e0ddf0bb1aa2a
Поскольку они разные, я не могу использовать ни перенаправления сборки (чтобы все фреймворки использовали одну и ту же версию log4net), ни кодовую базу (чтобы только новая структура использовала версию 1.2.11.0) через элемент времени выполнения в web.config.
Какие у меня здесь варианты?
(и почему log4net продолжает менять publickeytokens между версиями, насколько я понимаю, причиной переключения между версией 1.2.9.0 и 1.2.10.0 был потерянный ключ, они снова потеряли ключ? Я добровольно отправлю свой Dropbox чтобы сохранить его, если он им понадобится ...)
Изменить: Хорошо, поэтому у ребят из log4net, по-видимому, была идея, что выпуск с двумя ключами был хорошей идеей, но это означает, что каждая используемая вами структура должна согласовывать, какой из двух вариантов они предпочитают, или эти структуры не могут работать. рядом в том же домене приложения. Неужели только я считаю, что это ужасная идея? если бы все так поступили, все бы сломалось, верно?
Edit2: Как я уже сказал, я не использую log4net в своем бизнес-коде, но я использую несколько фреймворков, которые зависят от 1.2.10.0, и проблема возникла, когда я попытался использовать новую структуру, которая зависела от 1.2.11.0 (новый ключ ), поэтому ответ Стефанса неприменим, потому что новая структура будет ожидать новый ключ, а не старый