#wcf #visual-studio-2019
#wcf #visual-studio-2019
Вопрос:
После переустановки win 10 я установил VS 2019 (раньше использовался VS 2013). Все работает хорошо, только один проект со службой svc я не могу отлаживать с помощью WcfTextClient. Сборка в порядке, но при появлении WcfTestClient возникает исключение: FileNotFoundException: не удалось загрузить файл или сборку ‘Microsoft.Build.Utilities.Core.dll , Версия = 15.1.0.0, Культура = нейтральная, PublicKeyToken=b03f5f7f11d50a3a’ или одна из его зависимостей. Система не может найти указанный файл. Боюсь, это потому, что версия MSBulid в соответствии с VS 2019 равна 16.8.1. Но я не могу обнаружить, где настроено, что требуется версия 15.1.0.0. Пытался изменить относительные пути в devenv.exe.config и WcfTestClient.exe.config, но безрезультатно. Проект настроен для целевой платформы 4.5.2. Если я начну отладку на странице aspx (без WcfTestClient), он будет работать нормально. Если я попробую это на другой машине с установленными как VS 2013, так и VS 2019, он также работает в VS 2019.
Проект установлен с
<Project ToolsVersion="12.0" DefaultTargets="Build"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
Требуемая версия 15.1.0.0 относится к VS 2017, который я никогда не устанавливал на свой компьютер.
Я попытался изменить версию и путь к файлу во всех возможных конфигурациях, найденных в каталоге IDE VS, безуспешно.
Затем я попытался установить vs_buildtools для VS 2017, не помогло (но на самом деле это версия 15.9).
Наконец, я установил MSBuild 15.1, также версию 12.0, но ошибка все та же.
Комментарии:
1. Привет, могу я узнать, как сейчас происходит проблема? Если у вас нет других вопросов, пожалуйста, не забудьте отметить ответ.
2. Мне пришлось отложить это, но теперь я установил MSBuild 12, также не помогло. Но я думаю, вопрос в том, почему требуется версия 15.1., это не должно быть.
3. Вы можете попытаться найти Microsoft.Build. Служебные программы. Основной установочный пакет в пакете nuget и установите его.
4. Я думаю, что у меня это есть, я могу найти Microsoft.Build. Utilities.Core.dll в c:Program Файлы (x86) Microsoft Visual Studio 2017 BuildTools MSBuild15.0Bin.
5. Необходимо подтвердить его установку в проекте, чтобы проект мог использовать этот пакет nuget.
Ответ №1:
Согласно сообщению об ошибке, инструмент версии = 15.1.0.0 msbuild должен отсутствовать, и проект создается им. Ниже приведены различные версии msbuild, принадлежащие vs, и расположение msbuild.
Вы можете загрузить различные версии msbuild здесь: msbuild.
Вы можете найти диспетчер пакетов Nuget в параметрах инструмента, а затем выбрать управление пакетом nuget для решения. В этом интерфейсе вы можете установить Microsoft.Build.Utilities.Core.
Комментарии:
1. Спасибо, теперь все намного понятнее. Можно ли преобразовать проект и заставить его использовать текущий msbuild (даже если его больше невозможно создать в vs 2013).
2. Я не уверен, что недостающий инструмент требуется проекту, поскольку сам проект может быть собран и запущен. Только если запускается WcfTestClient, инструмент отсутствует.
3. Если вы можете использовать его на компьютере, на котором установлены vs 2013 и vs 2019, вы можете попробовать установить версию msbuild 12.0.
4. v12 не помог. Попытался установить версию 15.1 (поскольку VS_build tools для VS 2017 предоставил последнюю версию 15.9), но установка завершилась неудачно с ошибкой: Install-Package: не удалось установить пакет «Microsoft.Build 15.1.1013». Вы пытаетесь установить этот пакет в проект, который нацелен на «.NetFramework, Version = v4.5.2», но пакет не содержит никаких ссылок на сборки или файлов содержимого, совместимых с этой платформой. За дополнительной информацией обращайтесь к автору пакета.
5. Теперь я установил 15.1 (через новый пустой проект, основанный на платформе 4.6, поэтому установка завершена). Но моя проблема не удалась.