Как установить свойство «Конкретная версия» для ссылок на проекты в Visual Studio - PullRequest
7 голосов
/ 27 мая 2009

У меня есть решение Visual Studio, содержащее несколько проектов, и я настроил ссылки между проектами как ссылки на проекты.

Когда добавляется ссылка на сборку, свойства ссылок содержат параметр для

Specific Version = True|False

Это свойство отсутствует для ссылок на проекты. Как это можно установить? Мне бы хотелось, чтобы мое решение загружало любую доступную сборку (независимо от версии) в папку bin.

У меня была проблема, когда экземпляр рабочего процесса (Workflow Foundation) был десериализован, а зависимости были обновлены.

Ответы [ 4 ]

6 голосов
/ 27 мая 2009

Я думаю, что проблема в том, что то, что вы спрашиваете, невозможно напрямую со ссылкой на проект, я думаю, что это всегда неявно превращается в «явную версию» из-за природы ссылки.

Способ, которым вы могли бы сделать это (вызывая проект A, на который ссылаются в данный момент, и проект B, на который ссылаются):

  • Имейте проект, на который вы хотите сослаться в своем решении, так же, как вы делаете это сейчас со ссылкой на проект
  • Явно задайте цепочку зависимостей, чтобы сначала создать «ссылочный» проект
  • Построить ссылочный проект A один раз вручную
  • Создание ссылки на сборку в проекте B на результаты сборки в проекте A
  • Установить ссылку на сборку 'Конкретная версия = ложь'

Порядок сборки (зависимость) гарантирует, что A всегда собирается до B, а B будет ссылаться на него из двоичного каталога вывода A.

(хотя, это немного хрупко, и я бы не советовал его, так как легко получить неправильные результаты, если настройки не все в порядке, или солнце совпадает со звездами, или некоторые другие)

3 голосов
/ 27 мая 2009

Возможно, я неправильно понял ваш вопрос, но когда вы добавляете ссылку на проект, сборка проекта всегда загружается в любой проект, который ссылается на него при сборке проекта. Поэтому у вас всегда будет последняя доступная сборка в папке bin для этого проекта. В этом отношении VS трактует проекты не так, как другие сборки.

1 голос
/ 09 июня 2009

Я нашел решение своей проблемы. Это описано довольно подробно здесь . Проблема не в неправильных ссылках на проекты, а в вопросе де-сериализации экземпляров рабочих процессов.

Спасибо всем, кто пытался помочь.

1 голос
/ 27 мая 2009

Вы можете добавлять ссылки на выходные файлы проекта вместо проектов. После этого вы сможете установить конкретную версию.

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