Должны ли версии сборки сателлитов соответствовать базовой версии?

StackOverflow https://stackoverflow.com/questions/775512

Вопрос

Я только что столкнулся с ситуацией, когда мне нужно было обновить выпуск новой версией одной из наших сборок.Все мои сборки имеют строгие имена, и это приложение Windows Forms.Я отредактировал свой App.config, чтобы выполнить соответствующие переназначения, и все шло нормально, пока мы не протестировали наше программное обеспечение с нашей локализованной версией.Проблема, которую мы увидели, заключается в том, что существующая сборка satellite не загружалась, и мы не видели локализованных ресурсов.Единственное решение, которое я смог найти, состояло в том, чтобы перестроить вспомогательные сборки с помощью компоновщика сборок, используя базовую сборку в качестве шаблона.

Пара вопросов:

Если моя базовая сборка имеет строгое имя, должна ли моя вспомогательная сборка также иметь строгое имя?В моем случае я не использую GAC.

Почему моя спутниковая сборка не использует перенаправление, указанное в моем App.config?

Это было полезно?

Решение

Да, вспомогательные сборки также должны иметь строгие имена и иметь ту же версию и открытый ключ, что и реальная сборка.

Смотрите эту ссылку: http://www.codeguru.com/csharp/.net/net_general/tipstricks/article.php/c11367/

Я не уверен, почему он не загружается, когда вы используете перенаправление.Вы заменяете сборку версии 1 на версию 2.Вы перенаправляете версию 1 на версию 2.У вас есть сборки-сателлиты для сборки A, которые все еще находятся в версии 1?Правильно ли это?Это, конечно, не работает.Если вы заменяете узел, вам придется заменить его сателлиты.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top