Condividi tramite


ASP.NET core code generator tool (aspnet-codegenerator)

Il dotnet aspnet-codegenerator comando esegue il motore di scaffolding ASP.NET Core. L'esecuzione del comando è necessaria per eseguire lo dotnet aspnet-codegenerator scaffolding dalla riga di comando o quando si usa Visual Studio Code. Il comando non è necessario per usare lo scaffolding con Visual Studio, che include il motore di scaffolding per impostazione predefinita.

Installare e aggiornare lo strumento generatore di codice

Installare .NET SDK.

dotnet aspnet-codegenerator è uno strumento global che deve essere installato. Il comando seguente installa la versione stabile più recente dello strumento generatore di codice core ASP.NET:

dotnet tool install -g dotnet-aspnet-codegenerator

Nota

Per impostazione predefinita, l'architettura dei file binari .NET da installare rappresenta l'architettura del sistema operativo attualmente in esecuzione. Per specificare un'architettura del sistema operativo diversa, vedere dotnet tool install, --opzione arch.. Per altre informazioni, vedere Problema di GitHub dotnet/AspNetCore.Docs #29262.

Se lo strumento è già installato, il comando seguente aggiorna lo strumento alla versione stabile più recente disponibile dagli SDK .NET Core installati:

dotnet tool update -g dotnet-aspnet-codegenerator

Disinstallare lo strumento generatore di codice

Potrebbe essere necessario disinstallare lo strumento generatore di codice core ASP.NET per risolvere i problemi. Ad esempio, se è stata installata una versione di anteprima dello strumento, disinstallarla prima di installare la versione rilasciata.

I comandi seguenti disinstallano lo strumento generatore di codice core ASP.NET e installano la versione stabile più recente:

dotnet tool uninstall -g dotnet-aspnet-codegenerator
dotnet tool install -g dotnet-aspnet-codegenerator

Riepilogo

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]

Descrizione

Il comando globale dotnet aspnet-codegenerator esegue il generatore di codice e il motore di scaffolding di ASP.NET Core.

Argomenti

generator

Il generatore di codice da eseguire. I generatori disponibili sono illustrati nella tabella seguente.

Generatore Operazione
area Scaffolding di un'area.
blazor Gli scaffolding Blazor creano, leggono, aggiornano, eliminano ed elencano le pagine.
blazor-identity Genera BlazorIdentity file.
controller Scaffolding di un controller.
identity Eseguire lo scaffolding di Identity.
minimalapi Genera un file di endpoint (con endpoint API CRUD) in base a un modello e a un contesto di database facoltativo.
razorpage Scaffolding pagineRazor.
view Consente di eseguire lo scaffolding di una vista.
Generatore Operazione
area Scaffolding di un'area.
controller Scaffolding di un controller.
identity Eseguire lo scaffolding di Identity.
minimalapi Genera un file di endpoint (con endpoint API CRUD) in base a un modello e a un contesto di database facoltativo.
razorpage Scaffolding pagineRazor.
view Consente di eseguire lo scaffolding di una vista.

Opzioni

-b|--build-base-path

Percorso di base di compilazione.

-c|--configuration {Debug|Release}

Definisce la configurazione di compilazione. Il valore predefinito è Debug.

-h|--help

Stampa una breve guida per il comando.

-n|--nuget-package-dir

Specifica la directory del pacchetto NuGet.

--no-build

Non compila il progetto prima dell'esecuzione. Il passaggio --no-build imposta anche in modo implicito il --no-restore flag.

-p|--project <PATH>

Specifica il percorso del file di progetto da eseguire: nome della cartella o percorso completo. Se non specificato, lo strumento usa per impostazione predefinita la directory corrente.

-tfm|--target-framework

Framework di destinazione da usare.

Opzioni del generatore

Nelle sezioni seguenti vengono descritte in dettaglio le opzioni disponibili per i generatori supportati:

Opzioni per area

Sintassi: dotnet aspnet-codegenerator area {AREA NAME}

Il {AREA NAME} segnaposto è il nome dell'area da generare.

Il comando precedente genera le cartelle seguenti:

  • Areas
    • {AREA NAME}
      • Controllers
      • Data
      • Models
      • Views

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator area -h

Opzioni Blazor

Razor i componenti possono essere scaffolding singolarmente per Blazor le app specificando il nome del modello da usare. I modelli supportati sono:

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List
  • CRUD: CRUD è un acronimo di Create, Read, Update e Delete. Il CRUD modello produce Createcomponenti , DeleteEdit, Details, e Index (List) per l'app.

Le opzioni per il blazor generatore sono illustrate nella tabella seguente.

Opzione Descrizione
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita), sqlite, cosmoso postgres.
-dc|--dataContext Classe di contesto del database da usare.
-m|--model Classe di modelli da usare.
-ns|--namespaceName Specificare il nome dello spazio dei nomi da usare per il file endpoint generato.
--relativeFolderPath|-outDir Percorso della cartella di output relativo. Se non è specificato, i file vengono generati nella cartella del progetto.

L'esempio seguente:

  • Usa il Edit modello per generare un Edit componente (Edit.razor) nella Components/Pages/MoviePages cartella dell'app. Se la MoviePages cartella non esiste, lo strumento crea automaticamente la cartella.
  • Usa il provider di database SQLite.
  • BlazorWebAppMovies.Data.BlazorWebAppMoviesContext Usa per il contesto del database.
  • Usa il Movie modello.
dotnet aspnet-codegenerator blazor Edit -dbProvider sqlite -dc BlazorWebAppMovies.Data.BlazorWebAppMoviesContext -m Movie -outDir Components/Pages

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator blazor -h

Per altre informazioni, vedere ASP.NET componente Core Blazor QuickGrid.

Opzioni BlazorIdentity

Eseguire lo scaffolding IdentityRazor dei componenti in un'app Blazor con il blazor-identity generatore.

Le opzioni per il blazor-identity modello sono illustrate nella tabella seguente.

Opzione Descrizione
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita) e sqlite.
-dc|--dataContext Classe di contesto del database da usare.
-f|--force Usare questa opzione per sovrascrivere i file esistenti.
-fi|--files Elenco di file separati da punto e virgola da eseguire per lo scaffolding. Usare l'opzione -lf|--listFiles per visualizzare le opzioni disponibili.
-lf|--listFiles Elenca i file che è possibile eseguire lo scaffolding usando l'opzione -fi|--files .
-rn|--rootNamespace Spazio dei nomi radice da usare per la generazione di Identity codice.
-u|--userClass Nome della classe utente da generare.

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator blazor-identity -h

Opzioni per controller

Le opzioni generali sono illustrate nella tabella seguente.

Opzione Descrizione
-b|--bootstrapVersion Specifica la versione bootstrap e crea una wwwroot cartella per gli asset bootstrap se la cartella non è presente.
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita), sqlite, cosmos, postgres.
-dc|--dataContext Classe di contesto del database da utilizzare o il nome della classe da generare.
-f|--force Sovrascrivere i file esistenti.
-l|--layout Pagina di layout personalizzata da usare.
-m|--model Classe di modelli da usare.
-outDir|--relativeFolderPath Percorso della cartella di output relativo. Se non è specificato, i file vengono generati nella cartella del progetto.
-scripts|--referenceScriptLibraries Librerie di script di riferimento nelle viste generate. Aggiunge _ValidationScriptsPartial a Edit e Create pagine.
-sqlite|--useSqlite Flag per specificare se il contesto del database deve usare SQLite anziché SQL Server.
-udl|--useDefaultLayout Usare il layout predefinito per le viste.

Le opzioni univoche per controller sono illustrate nella tabella seguente.

Opzione Descrizione
-actions|--readWriteActions Genera un controller con azioni di lettura/scrittura senza un modello.
-api|--restWithNoViews Generare un controller con REST l'API di stile. Si presuppone noViews e qualsiasi opzione correlata alla visualizzazione viene ignorata.
-async|--useAsyncActions Generare azioni del controller asincrone.
-name|--controllerName Nome del controller.
-namespace|--controllerNamespace Specificare il nome dello spazio dei nomi da usare per il controller generato.
-nv|--noViews Non genera alcuna visualizzazione.

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator controller -h

Per un esempio che usa il controller generatore, vedere Parte 4, aggiungere un modello a un'app MVC ASP.NET Core.

Opzioni Identity

Per altre informazioni, vedere Scaffolding Identity nei progetti ASP.NET Core.

Opzioni API minime

Eseguire lo scaffolding di un back-end api minimo con il minimalapi modello.

Le opzioni per minimalapi sono illustrate nella tabella seguente.

Opzione Descrizione
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita), sqlite, cosmoso postgres.
-dc|--dataContext Classe di contesto del database da usare.
-e|--endpoints Classe Endpoints da usare (non il nome file).
-m|--model Classe di modelli da usare.
-namespace|--endpointsNamespace Specificare il nome dello spazio dei nomi da usare per il file degli endpoint generati.
-o|--open Usare questa opzione per abilitare OpenAPI.
-outDir|--relativeFolderPath Percorso della cartella di output relativo. Se non è specificato, i file vengono generati nella cartella del progetto.
-sqlite|--useSqlite Flag per specificare se il contesto del database deve usare SQLite anziché SQL Server.

L'esempio seguente:

  • Genera una classe endpoint denominata SpeakersEndpoints con endpoint API che eseguono il mapping alle operazioni del database usando la ApplicationDbContext classe di contesto del database e il BackEnd.Models.Speaker modello.
  • Aggiunge app.MapSpeakerEndpoints(); al Program file (Program.cs) per registrare la classe endpoint.
dotnet aspnet-codegenerator minimalapi -dc ApplicationDbContext -e SpeakerEndpoints -m BackEnd.Models.Speaker -o

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator minimalapi -h

Razor opzioni pagina

Razor Le pagine possono essere scaffolding singolarmente specificando il nome della nuova pagina e il modello da usare. I modelli supportati sono:

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List

In genere, il modello e il nome file generato non vengono specificati, che crea i modelli seguenti:

  • Create
  • Edit
  • Delete
  • Details
  • List

Le opzioni generali sono illustrate nella tabella seguente.

Opzione Descrizione
-b|--bootstrapVersion Specifica la versione bootstrap e crea una wwwroot cartella per gli asset bootstrap se la cartella non è presente.
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita), sqlite, cosmos, postgres.
-dc|--dataContext Classe di contesto del database da utilizzare o il nome della classe da generare.
-f|--force Sovrascrivere i file esistenti.
-l|--layout Pagina di layout personalizzata da usare.
-m|--model Classe di modelli da usare.
-outDir|--relativeFolderPath Percorso della cartella di output relativo. Se non è specificato, i file vengono generati nella cartella del progetto.
-scripts|--referenceScriptLibraries Librerie di script di riferimento nelle viste generate. Aggiunge _ValidationScriptsPartial a Edit e Create pagine.
-sqlite|--useSqlite Flag per specificare se il contesto del database deve usare SQLite anziché SQL Server.
-udl|--useDefaultLayout Usare il layout predefinito per le viste.

Le opzioni univoche per razorpage sono illustrate nella tabella seguente.

Opzione Descrizione
-namespace|--namespaceName Nome dello spazio dei nomi da usare per la classe generata PageModel .
-npm|--noPageModel Non generare una PageModel classe per il Empty modello.
-partial|--partialView Genera una visualizzazione parziale. Le opzioni -l di layout e -udl vengono ignorate se questa opzione è specificata.

Nell'esempio seguente viene usato il Edit modello per generare CustomEditPage.cshtml e CustomEditPage.cshtml.cs nella Pages/Movies cartella :

dotnet aspnet-codegenerator razorpage CustomEditPage Edit -dc RazorPagesMovieContext -m Movie -outDir Pages/Movies

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator razorpage -h

Per un esempio che usa il razorpage generatore, vedere Parte 2, aggiungere un modello.

Visualizza le opzioni

Le viste possono essere scaffolding singolarmente specificando il nome della visualizzazione e il modello. I modelli supportati sono:

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List

Le opzioni generali sono illustrate nella tabella seguente.

Opzione Descrizione
-b|--bootstrapVersion Specifica la versione bootstrap e crea una wwwroot cartella per gli asset bootstrap se la cartella non è presente.
-dbProvider|--databaseProvider Provider di database da usare. Le opzioni includono sqlserver (impostazione predefinita), sqlite, cosmos, postgres.
-dc|--dataContext Classe di contesto del database da utilizzare o il nome della classe da generare.
-f|--force Sovrascrivere i file esistenti.
-l|--layout Pagina di layout personalizzata da usare.
-m|--model Classe di modelli da usare.
-outDir|--relativeFolderPath Percorso della cartella di output relativo. Se non è specificato, i file vengono generati nella cartella del progetto.
-scripts|--referenceScriptLibraries Librerie di script di riferimento nelle viste generate. Aggiunge _ValidationScriptsPartial a Edit e Create pagine.
-sqlite|--useSqlite Flag per specificare se il contesto del database deve usare SQLite anziché SQL Server.
-udl|--useDefaultLayout Usare il layout predefinito per le viste.

Le opzioni univoche per view sono illustrate nella tabella seguente.

Opzione Descrizione
-namespace|--controllerNamespace Specificare il nome dello spazio dei nomi da usare per il controller generato.
-partial|--partialView Genera una visualizzazione parziale. Altre opzioni di layout (-l e -udl) vengono ignorate se questa opzione è specificata.

Nell'esempio seguente viene usato il Edit modello per generare CustomEditView.cshtml nella Views/Movies cartella :

dotnet aspnet-codegenerator view CustomEditView Edit -dc MovieContext -m Movie -outDir Views/Movies

Usare l'opzione per la -h|--help Guida:

dotnet aspnet-codegenerator view -h