aspnet-codegenerator: генераторы кода недоступны, даже после добавления Microsoft.VisualStudio.Web.CodeGeneration.Design
Невозможно создать леса с помощью aspnet-codegenerator , вот что я пробовал:
Создал приложение ASP.Net RazorPages, используя
dotnet new webappСделал
dotnet buildУстановлен dotnet-aspnet-codegenerator с помощью
dotnet tool install --global dotnet-aspnet-codegenerator --version 3.1.4Ран
dotnet aspnet-codegenerator --helpВ нем говорится: в этом проекте нет генераторов кода. Добавьте пакет Microsoft.VisualStudio.Web.CodeGeneration.Design в проект как ссылку на пакет NuGet.
Добавлен пакет, упомянутый в шаге 4, используя
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.DesignДобавлен пакет:
<ItemGroup> <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="3.1.4" /> </ItemGroup>Снова побежал:
dotnet buildПоследний шаг
Ран
dotnet aspnet-codegenerator --helpСнова говорится: в этом проекте нет генераторов кода. Добавьте пакет Microsoft.VisualStudio.Web.CodeGeneration.Design в проект в качестве ссылки на пакет NuGet.
.Net установленная версия ядра: 3.1.401
Ос: Ubuntu 20.04.
Ответы
Этому уже несколько месяцев, но я недавно сталкивался с этим для всех своих проектов.
В случае, если кто-то еще попадет на эту страницу, решение в моем случае (MAC OS) состояло в том, чтобы удалить и переустановить dotnet-aspnet-codegenerator.
Запускаем в терминале:
dotnet tool uninstall --global dotnet-aspnet-codegenerator
dotnet tool install --global dotnet-aspnet-codegenerator --version 3.1.4
Я проверяю вашу команду, и когда я это сделаю dotnet tool install --global dotnet-aspnet-codegenerator --version 3.1.4, я могу получить
а затем Ran dotnet aspnet-codegenerator --helpя получаю то же сообщение No code generators are available in this project.Add Microsoft.VisualStudio.Web.CodeGeneration.Design package to the project as a NuGetс вами, но когда я делаю следующее, я могу работать без сообщения:
Думаю может пакет не правильно добавлен, можно попробовать удалить и добавить еще раз.
dotnet remove package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
Я нашел РЕШЕНИЕ этой проблемы:
Последние версии вызывают некоторые проблемы, поэтому вам придется понизить версию SDK до 3.1.3 , написав эту команду в терминале:
sudo apt install dotnet-sdk-3.1 = 3.1.301-1
После этого вам потребуется установить следующее:
установка инструмента dotnet --global dotnet-aspnet-codegenerator --version 3.1.3
После этого вам нужно будет добавить правильный пакет Web.CodeGeneration.Design, написав это на терминале:
sudo apt install dotnet-sdk-3.1 = 3.1.301-1 установка инструмента dotnet --global dotnet-aspnet-codegenerator --version 3.1.3
Это сработало для меня !!
У меня такая же проблема при обновлении с .net core 3.1.4 до 5.0.1.
Мое решение:
- обновить глобальные инструменты:
dotnet tool install --global dotnet-aspnet-codegenerator
dotnet tool update --global dotnet-aspnet-codegenerator
dotnet tool install --global dotnet-ef
dotnet tool update --global dotnet-ef
- добавлять / обновлять ссылки на пакеты
dotnet remove package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
dotnet add package Add package Microsoft.EntityFrameworkCore.Design
- Заменить строку
netcoreapp3.1.4наnet5.0в файлах .csproj и launch.json - Очистить каталоги
- мусорное ведро
- объект
- Восстановить проект
- Наконец запустите:
dotnet aspnet-codegenerator --help
Если все в порядке, он покажет доступные генераторы.