Visual Studio 2010: как обеспечить порядок сборки проектов в решении? - PullRequest
71 голосов
/ 06 сентября 2010

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

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

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

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

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

Ответы [ 4 ]

120 голосов
/ 28 марта 2011

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

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

20 голосов
/ 07 сентября 2010

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

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

Configuration Manager

16 голосов
/ 16 октября 2012

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

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

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

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

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

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

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