Невозможно собрать и отладить мое приложение ASP.NET Core 2.1 с библиотеками классов .NET Standard 2.0 - PullRequest
0 голосов
/ 07 мая 2018

У меня есть проект ASP.NET Core 2.1 Preview 2, в котором есть несколько библиотек .NET Standard 2.0.

Я использую Visual Studio 2017 15.7 Preview 6.

Мне нужно использовать предварительную версию VS, потому что ASP.NET Core 2.1 также находится в предварительном просмотре и требует предварительную версию VS.

Каждый раз, когда я пытаюсь отладить, я получаю сообщения об ошибках:

Файл метаданных 'C: \ Users \ sam \ OneDrive \ Documents \ Visual Studio 2017 \ Projects \ MyProject \ MyProject.MyClassLibraryProject \ Bin \ Debug \ netstandard2.0 \ MyProject.MyClassLibraryProject.dll» не может быть найден

Все проекты находятся в одной папке для решения.

Я просто перестроил свой компьютер с Windows 10 и установил все заново. У меня были некоторые проблемы при создании этого проекта в VS раньше, но не эта конкретная ошибка. Раньше проблема заключалась в том, что я мог построить и отладить решение, но не смог опубликовать его в Azure для x64. Я проинформировал команду Visual Studio об этой проблеме, но они не смогли найти никаких ответов, поэтому я решил почистить компьютер и начать все заново. Теперь у меня новая проблема!

Я также хочу упомянуть, что еще несколько минут назад я мог на самом деле построить и отладить решение, но мне пришлось сделать Build Solution. Если бы я сделал Rebuild Solution, я бы получил ошибки, указывающие на пропущенные ссылки на мои проекты библиотеки классов. Это работало некоторое время, но потом я понял, что даже в режиме debug я не мог достичь своих точек останова. Поэтому я решил сделать Clean Solution, и с тех пор как я получаю эту новую ошибку, я просто не могу построить или отладить свое решение.

В файле csproj для проекта ASP.NET Core 2.1 я вижу эти записи. Нужны ли они мне?

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
   <PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
   <PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
   <PlatformTarget>x64</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
   <PlatformTarget>x64</PlatformTarget>
</PropertyGroup>

Есть идеи, как исправить эту ошибку?

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Одна из причуд VS. Используя VS 2017, у меня была та же проблема, где все ссылки показывали, как будто они были недоступны. Запуск «Восстановить пакеты Nuget» не помог. Из любопытства я выбрал один из проектов, в котором возникла проблема, проверил Свойства проекта и изменил инфраструктуру Target с .Net Standard 2.0 до 1.6. Сохраненный, затем изменил его обратно на 2.0, и все предупреждения в решении обновились, и отсутствующие ссылки на SDK и NuGet были «найдены». Построен сразу.

0 голосов
/ 07 мая 2018

Вы можете попробовать последнюю версию Visual Studio 2017 15.7 Final с .NET Core 2.1 RC1. Это решает мою проблему в версии VS2017 15.7 Preview 4 с .NET Core 2.1 Preview 2.

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