У меня есть решение для веб-приложения, созданное на основе кода vs, в котором у меня есть 4 проекта. Один проект с именем «core.csproj» является целевым фреймворком: netstandard2.1.
Все остальные (API.csproj, инфраструктура.csproj, emailservice.csproj) ориентированы на 3.1 как: сетевое приложение3.1**
Теперь я столкнулся с несовместимой проблемой, когда пытался добавить «core.csproj» в качестве эталонного проекта в другие проекты. Поэтому я хотел его изменить. Может ли кто-нибудь помочь, как?
Команда dotnet, которую я использовал для добавления эталонного проекта: dotnet добавить справочный API Core/Core.csproj/API.csproj
Ошибка, которую я получил: API.csproj нельзя добавить из-за несовместимости целевых платформ между двумя проектами. Просмотрите проект, который вы пытаетесь добавить, и убедитесь, что он совместим со следующими целями: - не поддерживается.
Отредактируйте файл core.csproj и измените свойство TargetFramework
на 3.1. и сохраните файл.
Перестройте решение, если возникнут какие-либо ошибки, исправьте их.
Восстановить снова.
Прежде чем вносить изменения, сделайте резервную копию проекта, чтобы избежать непредвиденных проблем.
Пример здесь:
@canbrian ожидается, что будут некоторые ошибки, которые необходимо решить, связанные с совместимостью кода. поэтому вам нужно пройти через эти ошибки одну за другой и решить их.
@canbrian особенно относится к пакетам Nuget, если они используются, возможно, их также нужно обновить.
Это все сообщение об ошибке. «Определение проектов для восстановления... C:\Program Files\dotnet\sdk\5.0.101\NuGet.targets(131,5): ошибка: неверный ввод данных для восстановления. Недопустимая целевая платформа «не поддерживается».
@canbrian ты используешь .NET 5?
да, .NET 5. Я успешно его построил. Я считаю, что способ изменения целевой структуры работает. Спасибо за вашу помощь!
большой! рад этому
Я запускаю сборку dotnet после внесения этого изменения. получил Build FAILED. Определение проектов для восстановления... C:\Program Files\dotnet\sdk\5.0.101\NuGet.targets(131,5): ошибка: неверный ввод данных для восстановления. Недопустимая целевая платформа «не поддерживается».