Visual Studio не будет создавать проект из-за пути сборки, несмотря на правильность пути сборки? - PullRequest
0 голосов
/ 08 февраля 2020

Моя установка Visual Studio 2019 не будет создавать веб-службу, которую я только что написал, и говорит, что у меня неверный путь к веб-приложениям, подобным следующему:

C:\Users\rudiejd\source\repos\CrowdRecWeb\CrowdRecWeb\CrowdRecWeb.csproj(109,3): error MSB4019: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VisualStudio\v16.0\WebApplications" was not found. Confirm that the expression in the Import declaration "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VisualStudio\v16.0\WebApplications" is correct, and that the file exists on disk.

Вот раздел моего .csproj, где я установил путь MSBuild:

<PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild</VSToolsPath> 
  </PropertyGroup>
  <Import Project="$(VSToolsPath)\Microsoft\VisualStudio\v16.0\WebApplications" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

В чем здесь проблема?

1 Ответ

0 голосов
/ 10 февраля 2020

В чем здесь проблема?

Что-то не так с вашим файлом csproj. Подобно Hans , который прокомментирован выше, вы передаете каталог элементу Import.

Но в Msbuild вы должны передать целевой файл (path\xx.targets) в элемент Import. Простой пример, подобный этому: <Import Project="xxx.targets"/>. Подробнее см. этот документ .

Решение:

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

  <Import Project="$(VSToolsPath)\Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
  <Import Project="$(MSBuildExtensionsPath32)Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

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

Кроме того:

Если вы получаете сообщение об ошибке, например Microsoft.WebApplication.targets, не найдено, просто убедитесь, что вы установили рабочую нагрузку, связанную с веб-разработкой:

enter image description here

Надеюсь, это поможет:)

...