it-swarm.com.ru

Visual Studio 2010: как обеспечить порядок сборки проектов в решении?

У меня не было проблем с этим в Visual Studio 2008, но кажется, что в VS 2010 есть проблема, и я держу пари, что это, вероятно, я.

У меня есть решение с проектом веб-сайта ASP.NET и несколькими проектами на C # (BLL, DAL, тесты в NUnit). Я настроил процесс сборки для тестового проекта для автоматического запуска NUnit для запуска тестов. Я хотел бы убедиться, что проекты BLL и DAL будут собраны до тестового проекта, чтобы тесты работали с последней скомпилированной версией (да, я знаю, что могу сделать все это в одном проекте, но я предпочитаю не ... пожалуйста терпите меня :))

Итак, я установил зависимости проекта Test, чтобы он включал проекты BLL, DAL и Web Application, а порядок сборки показывает BLL, DAL, Web Application, а затем Tests. Тем не менее, я заметил, что BLL на самом деле не собирается, когда я создаю тестовый проект.

Любая идея, что это может быть или какой-либо вариант, который я мог бы упустить, чтобы заставить другие проекты создавать при создании тестового проекта?

Заранее благодарю за любую помощь!

67
SeanKilleen

Ник Крэйвер упомянул, что проверял Configuration Manager, чтобы убедиться, что вы выбрали проект для построения для данной конфигурации. 

Однако, чтобы установить порядок сборки для нескольких проектов в решении, щелкните правой кнопкой мыши решение и выберите «Порядок сборки проекта ...» в контекстном меню.

114
M. Travis Volker

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

Откройте диспетчер конфигурации, щелкнув правой кнопкой мыши по решению и выбрав Configuration Manager , а затем убедитесь, что сборка проверена для соответствующего проекта (для вашей текущей конфигурации) в правом столбце здесь:

Configuration Manager

20
Nick Craver

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

  1. В обозревателе решений выберите проект.
  2. В меню «Проект» выберите «Зависимости проекта». Откроется диалоговое окно Зависимости проекта . Параметр Зависимости проекта доступен только в решении с несколькими проектами.
  3. На вкладке «Зависимости» выберите проект в раскрывающемся меню «Проект».
  4. В поле Зависит от, установите флажок для любого другого проекта, который должен быть построен до того, как этот проект будет выполнен.
15
Vyktor

Чтобы исправить проблему, возникающую в моем VS2012, я сделал следующее:

Щелкните правой кнопкой мыши Свойства проекта -> Общие свойства -> Каркас и ссылки

Теперь вы увидите, что некоторые проекты, показанные на вкладке «Зависимость», отсутствуют в списке «Ссылки».

Нажмите «Добавить новую ссылку», чтобы добавить недостающие проекты. 

0
John