Подтвердить что ты не робот

Решение Visual Studio 2013 Решение не в порядке сборки

У меня возникают проблемы с получением моего С# решения для сборки "Fresh". Если я очищу решение и снова его построю, он не будет создан (я могу сделать это несколько раз, и он будет создан). У него есть ошибка, связанная с созданием проекта azure перед рабочим и веб-проектами, от которого он зависит. Также о том, как большинство проектов в решении ищут

WAT070 : The referenced assembly {...}/Worker.dll was not found. 
Please make sure to build the role project that produces this assembly before building this Windows Azure Cloud Service Project.
{...}\VisualStudio\v12.0\Windows Azure Tools\2.2\Microsoft.WindowsAzure.targets 1252    5   AzureProjectName

Теперь, если я строю проекты в порядке, указанном в Зависимости проектов → Порядок сборки, все работает. Кроме того, веб-сайт и рабочая роль перечислены перед проектом Azure.

4b9b3361

Ответ 1

Решение очень просто.

Вы можете установить порядок создания проекта, щелкнув правой кнопкой мыши на "Project Solution" и выбрать "Выбрать заказ сборки проекта".

enter image description here

Например, у меня есть WpfFormApplicaiton1 и два класса с заголовком "ClassLibrary1" и "ClassLibrary2" . По умолчанию Visual Studio устанавливает его следующим образом:

enter image description here

Мое требование такое, что "ClassLibrary2" будет использоваться "ClassLibrary1" , а "ClassLibrary1" будет использоваться "WpfFormApplication1". Итак, чтобы выполнить это требование, мне нужно изменить порядок сборки проекта по умолчанию.

Перейдите в Зависимости проектов; Выберите "ClassLibrary1" и установите "ClassLibrary2" в качестве зависимости.

enter image description here

Similary, выберите "WpfFormApplication1" и установите "ClassLibrary1" в качестве зависимости.

enter image description here

Теперь задан желаемый порядок сборки проекта; подтвержденные параметрами порядка сборки проекта.

enter image description here

Решение взято из моего blog.

Ответ 2

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

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

В разделе Tools->Options->Project and Solutions->Build and Run вы можете видеть, что для количества параллельных проектов, которые нужно построить, используется значение по умолчанию. enter image description here

Чтобы заставить процесс сборки ждать создания зависимостей, убедитесь, что все поля "Зависит от" проверяются на проекты, необходимые в зависимости от проекта → Зависимости.

Ответ 3

У нас возникла проблема, когда в этом случае команды проекта различались. Редактирование файлов проекта решило проблему. Мы изменили все гиды на верхний регистр.

Ответ 4

У меня тоже была эта проблема. В моем случае проблема заключалась в том, что в решении было несколько ссылок на проекты. Другие проекты использовали другую версию фрейма для моей рабочей роли (4.5.1 vs 4.5).

Когда я сменил все проекты на использование той же версии фреймворка, решение будет успешно создано и успешно выполнено.

Ответ 5

Убедитесь, что в рабочей папке нет остаточных старых файлов. Это может привести к путанице с MSBuild. Чтобы этого избежать, просто удалите все старые файлы на пути и получите последние версии.

Ответ 6

У меня была эта проблема. В моем случае порядок построения проекта решения, определенный VS.Net, был неправильным. В частности, мой веб-проект был указан выше трех его зависимостей.

Эти три зависимости перечислены в разделе "Ссылки" node веб-проекта в обозревателе решений. Однако в диалоге Project Dependencies веб-проект не зависел ни от какого проекта.

Кроме того, я заметил, что веб-проект имел небольшой синий восклицательный знак с сообщением об ошибке "Веб-проект" требует SQL Server Express, который не установлен на этом компьютере... ". После работы с web.config на основе ASP.NET Web Api: Project требует SQL Server Express и перезагрузки проекта, восклицание исчезло, а зависимости проекта были правильно проверены в диалоге" Зависимости проекта" и порядок сборки правильно отразились. Однако, когда я вернул изменения в web.config, в качестве теста зависимости не были удалены, поэтому я совершенно не уверен, что исправил мои проблемы.

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