Ferramenta de gerador de código do ASP.NET Core (aspnet-codegenerator
)
Observação
Esta não é a versão mais recente deste artigo. Para a versão atual, consulte a versão .NET 9 deste artigo.
Aviso
Esta versão do ASP.NET Core não tem mais suporte. Para obter mais informações, consulte a Política de Suporte do .NET e do .NET Core. Para a versão atual, consulte a versão .NET 9 deste artigo.
Importante
Essas informações relacionam-se ao produto de pré-lançamento, que poderá ser substancialmente modificado antes do lançamento comercial. A Microsoft não oferece nenhuma garantia, explícita ou implícita, quanto às informações fornecidas aqui.
Para a versão atual, consulte a versão .NET 9 deste artigo.
O comando dotnet aspnet-codegenerator
executa o mecanismo de scaffolding do ASP.NET Core. A execução do comando dotnet aspnet-codegenerator
é necessária para fazer scaffolding da linha de comando ou ao usar o Visual Studio Code. O comando não é necessário para usar scaffolding com o Visual Studio, que inclui o mecanismo de scaffolding por padrão.
Instalar e atualizar a ferramenta de gerador de código
Instale o SDK do .NET.
dotnet aspnet-codegenerator
é uma ferramenta global que deve ser instalada. O comando a seguir instala a versão estável mais recente da ferramenta de gerador de código do ASP.NET Core:
dotnet tool install -g dotnet-aspnet-codegenerator
Observação
Por padrão, a arquitetura dos binários do .NET a serem instalados representa a arquitetura do SO sendo executado no momento. Para especificar uma arquitetura de SO diferente, consulte instalação da ferramenta dotnet, opção --arch. Para obter mais informações, confira o problema dotnet/AspNetCore.Docs #29262 do GitHub.
Se a ferramenta já estiver instalada, o comando a seguir atualizará a ferramenta para a versão estável mais recente disponível nos SDKs do .NET Core instalados:
dotnet tool update -g dotnet-aspnet-codegenerator
Desinstalar a ferramenta de gerador de código
Pode ser necessário desinstalar a ferramenta de gerador de código do ASP.NET Core para resolver problemas. Por exemplo, se você instalou uma versão prévia da ferramenta, desinstale-a antes de instalar a versão lançada.
Os comandos a seguir desinstalam a ferramenta de gerador de código do ASP.NET Core e instalam a versão estável mais recente:
dotnet tool uninstall -g dotnet-aspnet-codegenerator
dotnet tool install -g dotnet-aspnet-codegenerator
Sinopse
dotnet aspnet-codegenerator [arguments] [-b|--build-base-path] [-c|--configuration] [-n|--nuget-package-dir] [--no-build] [-p|--project] [-tfm|--target-framework]
dotnet aspnet-codegenerator [-h|--help]
Descrição
O comando global dotnet aspnet-codegenerator
executa o mecanismo de scaffolding e o gerador de código do ASP.NET Core.
Argumentos
generator
O gerador de código para ser executado. Os geradores disponíveis são mostrados na tabela a seguir.
Gerador | Operação |
---|---|
area |
Faz scaffolding de uma área. |
blazor |
Os scaffolds do Blazor criam, leem, atualizam, excluem e listam páginas. |
blazor-identity |
Gera arquivos BlazorIdentity. |
controller |
Faz scaffolding de um controlador. |
identity |
Faz scaffolding de Identity. |
minimalapi |
Gera um arquivo de pontos de extremidade (com pontos de extremidade da API CRUD) dado um modelo e um contexto de banco de dados opcional. |
razorpage |
Faz scaffolding de Razor Pages. |
view |
Faz scaffolding de uma exibição. |
Gerador | Operação |
---|---|
area |
Faz scaffolding de uma área. |
controller |
Faz scaffolding de um controlador. |
identity |
Faz scaffolding de Identity. |
minimalapi |
Gera um arquivo de pontos de extremidade (com pontos de extremidade da API CRUD) dado um modelo e um contexto de banco de dados opcional. |
razorpage |
Faz scaffolding de Razor Pages. |
view |
Faz scaffolding de uma exibição. |
Opções
-b|--build-base-path
O caminho base da compilação.
-c|--configuration {Debug|Release}
Define a configuração da compilação. O valor padrão é Debug
.
-h|--help
Imprime uma ajuda breve para o comando.
-n|--nuget-package-dir
Especifica o diretório de pacote do NuGet.
--no-build
Não compila o projeto antes da execução. Passar --no-build
também define implicitamente o sinalizador --no-restore
.
-p|--project <PATH>
Especifica o caminho do arquivo de projeto a ser executado (nome da pasta ou caminho completo). Se não for especificado, a ferramenta usará como padrão o diretório atual.
-tfm|--target-framework
A estrutura de destino a ser usada.
Opções de gerador
As seções a seguir detalham as opções disponíveis para os geradores com suporte:
Opções de área
Uso: dotnet aspnet-codegenerator area {AREA NAME}
O espaço reservado {AREA NAME}
é o nome da área a ser gerada.
O comando anterior gera as seguintes pastas:
Areas
{AREA NAME}
Controllers
Data
Models
Views
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator area -h
Blazor options
Os componentes Razor podem receber scaffolding individualmente para aplicativos Blazor especificando o nome do modelo a ser usado. Os modelos com suporte são:
Empty
Create
Edit
Delete
Details
List
CRUD
: CRUD é um acrônimo para Criar, Ler, Atualizar e Excluir. O modeloCRUD
produz componentesCreate
,Edit
,Delete
,Details
eIndex
(List
) para o aplicativo.
As opções para o gerador blazor
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão), sqlite , cosmos ou postgres . |
-dc|--dataContext |
Classe de contexto de banco de dados a ser usada. |
-m|--model |
Classe de modelo a ser usada. |
-ns|--namespaceName |
Especifique o nome do namespace a ser usado para o arquivo de pontos de extremidade gerado. |
--relativeFolderPath|-outDir |
Caminho relativo da pasta de saída. Se não for especificado, os arquivos serão gerados na pasta do projeto. |
O exemplo a seguir:
- Usa o modelo
Edit
para gerar um componenteEdit
(Edit.razor
) na pastaComponents/Pages/MoviePages
do aplicativo. Se a pastaMoviePages
não existir, a ferramenta criará a pasta automaticamente. - Usa o provedor de banco de dados SQLite.
- Usa
BlazorWebAppMovies.Data.BlazorWebAppMoviesContext
para o contexto do banco de dados. - Usa o modelo
Movie
.
dotnet aspnet-codegenerator blazor Edit -dbProvider sqlite -dc BlazorWebAppMovies.Data.BlazorWebAppMoviesContext -m Movie -outDir Components/Pages
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator blazor -h
Para obter um exemplo que usa o blazor
gerador, consulte Criar um aplicativo de Blazor banco de dados de filmes (visão geral).
Para saber mais, confira Componente QuickGrid do Blazor no ASP.NET Core.
BlazorIdentity options
Faça scaffolding de componentes IdentityRazor em um aplicativo Blazor com o gerador blazor-identity
.
As opções para o modelo blazor-identity
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão) e sqlite . |
-dc|--dataContext |
Classe de contexto de banco de dados a ser usada. |
-f|--force |
Use essa opção para substituir arquivos existentes. |
-fi|--files |
Lista de arquivos separados por ponto-e-vírgula para o scaffolding. Use a opção -lf|--listFiles para ver as opções disponíveis. |
-lf|--listFiles |
Lista os arquivos para os quais pode ser feito scaffolding usando a opção -fi|--files . |
-rn|--rootNamespace |
O namespace raiz a ser usado para gerar código Identity. |
-u|--userClass |
Nome da classe de usuário a ser gerada. |
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator blazor-identity -h
Opções de controlador
As opções gerais são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-b|--bootstrapVersion |
Especifica a versão de inicialização e cria uma pasta wwwroot para os ativos de inicialização se a pasta não estiver presente. |
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão), sqlite , cosmos , postgres . |
-dc|--dataContext |
A classe de contexto de banco de dados a ser usada ou o nome da classe a ser gerada. |
-f|--force |
Substitui os arquivos existentes. |
-l|--layout |
Página de layout personalizada a ser usada. |
-m|--model |
Classe de modelo a ser usada. |
-outDir|--relativeFolderPath |
Caminho relativo da pasta de saída. Se não for especificado, os arquivos serão gerados na pasta do projeto. |
-scripts|--referenceScriptLibraries |
Faz referência a bibliotecas de script nas exibições geradas. Adiciona _ValidationScriptsPartial a páginas Edit e Create . |
-sqlite|--useSqlite |
Sinalizar para especificar se o contexto do banco de dados deve usar o SQLite em vez do SQL Server. |
-udl|--useDefaultLayout |
Usa o layout padrão das exibições. |
As opções exclusivas de controller
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-actions|--readWriteActions |
Gere o controlador com ações de leitura/gravação sem um modelo. |
-api|--restWithNoViews |
Gere um controlador com a API de estilo REST. É assumido noViews e todas as opções relacionadas à visualização são ignoradas. |
-async|--useAsyncActions |
Gerar ações de controlador assíncronas. |
-name|--controllerName |
O nome do controlador. |
-namespace|--controllerNamespace |
Especifique o nome do namespace a ser usado para o controlador gerado. |
-nv|--noViews |
Não gera modos de exibição. |
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator controller -h
Para obter um exemplo que usa o gerador controller
, confira Parte 4, adicionar um modelo a um aplicativo do ASP.NET Core MVC.
Identity options
Para obter mais informações, veja Scaffold Identity em projetos ASP.NET Core.
Opções da API mínima
Fazer scaffolding de um back-end de API mínima com o modelo minimalapi
.
As opções para minimalapi
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão), sqlite , cosmos ou postgres . |
-dc|--dataContext |
Classe de contexto de banco de dados a ser usada. |
-e|--endpoints |
Classe de pontos de extremidade a ser usada (não o nome do arquivo). |
-m|--model |
Classe de modelo a ser usada. |
-namespace|--endpointsNamespace |
Especifique o nome do namespace a ser usado para o arquivo de pontos de extremidade gerado. |
-o|--open |
Use esta opção para habilitar o OpenAPI. |
-outDir|--relativeFolderPath |
Caminho relativo da pasta de saída. Se não for especificado, os arquivos serão gerados na pasta do projeto. |
-sqlite|--useSqlite |
Sinalizar para especificar se o contexto do banco de dados deve usar o SQLite em vez do SQL Server. |
O exemplo a seguir:
- Gera uma classe de pontos de extremidade nomeada
SpeakersEndpoints
com pontos de extremidade de API que são mapeados para operações de banco de dados usando a classe de contexto de banco de dadosApplicationDbContext
e o modeloBackEnd.Models.Speaker
. - Adiciona
app.MapSpeakerEndpoints();
ao arquivoProgram
(Program.cs
) para registrar a classe de pontos de extremidade.
dotnet aspnet-codegenerator minimalapi -dc ApplicationDbContext -e SpeakerEndpoints -m BackEnd.Models.Speaker -o
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator minimalapi -h
Razor opções de página
As Páginas do Razor podem ser geradas por scaffolding individualmente, especificando o nome da nova página e o modelo a ser usado. Os modelos com suporte são:
Empty
Create
Edit
Delete
Details
List
Normalmente, o modelo e o nome do arquivo gerado não são especificados, o que cria os seguintes modelos:
Create
Edit
Delete
Details
List
As opções gerais são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-b|--bootstrapVersion |
Especifica a versão de inicialização e cria uma pasta wwwroot para os ativos de inicialização se a pasta não estiver presente. |
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão), sqlite , cosmos , postgres . |
-dc|--dataContext |
A classe de contexto de banco de dados a ser usada ou o nome da classe a ser gerada. |
-f|--force |
Substitui os arquivos existentes. |
-l|--layout |
Página de layout personalizada a ser usada. |
-m|--model |
Classe de modelo a ser usada. |
-outDir|--relativeFolderPath |
Caminho relativo da pasta de saída. Se não for especificado, os arquivos serão gerados na pasta do projeto. |
-scripts|--referenceScriptLibraries |
Faz referência a bibliotecas de script nas exibições geradas. Adiciona _ValidationScriptsPartial a páginas Edit e Create . |
-sqlite|--useSqlite |
Sinalizar para especificar se o contexto do banco de dados deve usar o SQLite em vez do SQL Server. |
-udl|--useDefaultLayout |
Usa o layout padrão das exibições. |
As opções exclusivas de razorpage
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-namespace|--namespaceName |
O nome do namespace a ser usado para a classe gerada PageModel . |
-npm|--noPageModel |
Não gere uma classe PageModel para o modelo Empty . |
-partial|--partialView |
Gere uma exibição parcial. As opções de layout -l e -udl serão ignoradas se isto for especificado. |
O exemplo a seguir usa o modelo Edit
para gerar CustomEditPage.cshtml
e CustomEditPage.cshtml.cs
na pasta Pages/Movies
:
dotnet aspnet-codegenerator razorpage CustomEditPage Edit -dc RazorPagesMovieContext -m Movie -outDir Pages/Movies
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator razorpage -h
Para obter um exemplo que usa o gerador razorpage
, confira a Parte 2, adicionar um modelo.
Opções de exibição
As exibições podem ser separadas individualmente especificando o nome da exibição e do modelo. Os modelos com suporte são:
Empty
Create
Edit
Delete
Details
List
As opções gerais são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-b|--bootstrapVersion |
Especifica a versão de inicialização e cria uma pasta wwwroot para os ativos de inicialização se a pasta não estiver presente. |
-dbProvider|--databaseProvider |
Provedor de banco de dados a ser usado. As opções incluem sqlserver (padrão), sqlite , cosmos , postgres . |
-dc|--dataContext |
A classe de contexto de banco de dados a ser usada ou o nome da classe a ser gerada. |
-f|--force |
Substitui os arquivos existentes. |
-l|--layout |
Página de layout personalizada a ser usada. |
-m|--model |
Classe de modelo a ser usada. |
-outDir|--relativeFolderPath |
Caminho relativo da pasta de saída. Se não for especificado, os arquivos serão gerados na pasta do projeto. |
-scripts|--referenceScriptLibraries |
Faz referência a bibliotecas de script nas exibições geradas. Adiciona _ValidationScriptsPartial a páginas Edit e Create . |
-sqlite|--useSqlite |
Sinalizar para especificar se o contexto do banco de dados deve usar o SQLite em vez do SQL Server. |
-udl|--useDefaultLayout |
Usa o layout padrão das exibições. |
As opções exclusivas de view
são mostradas na tabela a seguir.
Opção | Descrição |
---|---|
-namespace|--controllerNamespace |
Especifique o nome do namespace a ser usado para o controlador gerado. |
-partial|--partialView |
Gere uma exibição parcial. Outras opções de layout (-l e -udl ) serão ignoradas se isto for especificado. |
O exemplo a seguir usa o modelo Edit
para gerar CustomEditView.cshtml
na pasta Views/Movies
:
dotnet aspnet-codegenerator view CustomEditView Edit -dc MovieContext -m Movie -outDir Views/Movies
Use a opção -h|--help
para obter ajuda:
dotnet aspnet-codegenerator view -h