VS2010 косвенная ссылка выпуск - PullRequest
1 голос
/ 13 марта 2012

У меня есть эти VS2010 .net проекты / сборки AssemblyA, AssemblyB, AssemblyC.

AssemblyC ссылается как на AssemblyA, так и на AssemblyB
AssemblyB ссылается только на AssemblyA

Каждый проект имеет свое собственное решение.Все ссылки установлены. Конкретная версия = False

Каждый раз, когда я собираю AssemblyA, я получаю следующие ошибки в AssemblyC

"В настоящее время проект содержит ссылки на несколько версий AssemblyA, прямую ссылку на версию4.0.1.27700 и косвенная ссылка (через «AssemblyB.SomeClass») на версию 4.0.1.33206. Измените прямую ссылку на использование версии 4.0.1.33206 (или выше) AssemblyA. "

Единственный обходной путь, который у меня естьнайдено 1) собрать AssemblyB каждый раз, когда я собираю AssemblyA 2) удалить обе ссылки в AssemblyC и добавить их снова.

Это нормально?Любое другое решение?

1 Ответ

0 голосов
/ 13 марта 2012

«Specific Version = False» только указывает компилятору ссылаться на любую версию, которая у вас установлена ​​локально.После компиляции все равно нужна точная версия, которая была у вас при компиляции.Поэтому, когда вы создаете новую версию AssemblyA, AssemblyB не знает об этом, и в итоге вы получаете ошибку.

Есть ли причина, по которой они не являются частью одного и того же решения?Если вы вносите изменения в AssemblyA, и AssemblyB использует его, представляется разумным также перестроить AssemblyB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...