ASP.NET Core-kodgeneratorverktyget (aspnet-codegenerator)

Note

Det här är inte den senaste versionen av den här artikeln. Den aktuella versionen finns i .NET 10-versionen av den här artikeln.

Warning

Den här versionen av ASP.NET Core stöds inte längre. Mer information finns i supportpolicyn för .NET och .NET Core. För den nuvarande utgåvan, se .NET 9-versionen av den här artikeln .

Kommandot dotnet aspnet-codegenerator kör ASP.NET Core-byggnadsställningsmotorn. Att använda kommandot dotnet aspnet-codegenerator är nödvändigt för att skapa en struktur från kommandoraden eller när du använder Visual Studio Code. Kommandot krävs inte för att använda byggnadsställningar med Visual Studio, som innehåller byggnadsställningsmotorn som standard.

Installera och uppdatera kodgeneratorverktyget

Installera .NET SDK.

dotnet aspnet-codegenerator är ett globalt verktyg som måste installeras. Följande kommando installerar den senaste stabila versionen av kodgeneratorverktyget ASP.NET Core:

dotnet tool install -g dotnet-aspnet-codegenerator

Note

Som standard representerar arkitekturen för de .NET-binärfiler som ska installeras den operativsystemarkitektur som körs. Information om hur du anger en annan OPERATIVSYSTEM-arkitektur finns i dotnet tool install, --arch option. Mer information finns i GitHub issue dotnet/AspNetCore.Docs #29262.

Om verktyget redan är installerat uppdaterar följande kommando verktyget till den senaste stabila versionen som är tillgänglig från de installerade .NET SDK:erna:

dotnet tool update -g dotnet-aspnet-codegenerator

Avinstallera kodgeneratorverktyget

Du kan behöva avinstallera verktyget ASP.NET Core-kodgeneratorn för att lösa problem. Om du till exempel har installerat en förhandsversion av verktyget avinstallerar du det innan du installerar den utgivna versionen.

Följande kommandon avinstallerar kodgeneratorverktyget ASP.NET Core och installerar den senaste stabila versionen:

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

Synopsis

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]

Description

Det dotnet aspnet-codegenerator globala kommandot kör ASP.NET Core-kodgeneratorn och scaffoldmotor.

Arguments

generator

Kodgeneratorn som ska köras. Tillgängliga generatorer visas i följande tabell.

Generator Operation
area Ställer i ordning ett område.
blazor Scaffolds Blazor skapar, läser, uppdaterar, tar bort och listar sidor.
blazor-identity Genererar BlazorIdentity filer.
controller Skapar en grundläggande mall för en controller.
identity Ställningar Identity.
minimalapi Genererar en slutpunktsfil (med CRUD API-slutpunkter) med en modell och valfri databaskontext.
razorpage Ställningar Razor Sidor.
view Gör en grundstruktur för en vy.
Generator Operation
area Ställer i ordning ett område.
controller Skapar en grundläggande mall för en controller.
identity Ställningar Identity.
minimalapi Genererar en slutpunktsfil (med CRUD API-slutpunkter) med en modell och valfri databaskontext.
razorpage Ställningar Razor Sidor.
view Gör en grundstruktur för en vy.

Options

-b|--build-base-path

Byggbasens sökväg.

-c|--configuration {Debug|Release}

Definierar byggkonfigurationen. Standardvärdet är Debug.

-h|--help

Skriver ut en kort hjälp för kommandot.

-n|--nuget-package-dir

Anger katalogen för NuGet-paket.

--no-build

Bygger inte projektet innan det körs. Genom att överföra --no-build anges också flaggan --no-restore implicit.

-p|--project <PATH>

Anger sökvägen till projektfilen som ska köras (mappnamn eller fullständig sökväg). Om det inte anges används den aktuella katalogen som standard.

-tfm|--target-framework

Det målramverk som ska användas.

Generatoralternativ

I följande avsnitt beskrivs vilka alternativ som är tillgängliga för de generatorer som stöds:

Områdesalternativ

Användning: dotnet aspnet-codegenerator area {AREA NAME}

Platshållaren {AREA NAME} är namnet på det område som ska genereras.

Föregående kommando genererar följande mappar:

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

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator area -h

Blazor Alternativ

Razor komponenter kan bli individuella genererade för Blazor appar genom att specificera namnet på mallen som ska användas. Mallarna som stöds är:

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List
  • CRUD: CRUD är en förkortning för Skapa, Läsa, Uppdatera och Ta bort. Mallen CRUD skapar Createkomponenterna , Edit, Delete, Detailsoch Index (List) för appen.

Alternativen för generatorn blazor visas i följande tabell.

Option Description
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen är sqlserver (standard), sqlite, cosmoseller postgres.
-dc|--dataContext Databaskontextklass som ska användas.
-m|--model Modellklass som ska användas.
-ns|--namespaceName Ange namnet på namnområdet som ska användas för den genererade slutpunktsfilen.
--relativeFolderPath|-outDir Relativ sökväg för utdatafolder Om det inte anges genereras filer i projektmappen.

Följande exempel:

  • Använder mallen Edit för att generera en Edit komponent (Edit.razor) i Components/Pages/MoviePages appens mapp. MoviePages Om mappen inte finns skapar verktyget mappen automatiskt.
  • Använder SQLite-databasprovidern.
  • Används BlazorWebAppMovies.Data.BlazorWebAppMoviesContext för databaskontexten.
  • Använder Movie modellen.
dotnet aspnet-codegenerator blazor Edit -dbProvider sqlite -dc BlazorWebAppMovies.Data.BlazorWebAppMoviesContext -m Movie -outDir Components/Pages

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator blazor -h

Ett exempel som använder generatorn finns i blazorSkapa en Blazor filmdatabasapp (Översikt).

Mer information finns i komponenten ASP.NET CoreBlazorQuickGrid.

Blazor Identity alternativ

Bygg IdentityRazor komponenter i en Blazor app med blazor-identity generatorn.

Alternativen för mallen blazor-identity visas i följande tabell.

Option Description
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen är sqlserver (standard) och sqlite.
-dc|--dataContext Databaskontextklass som ska användas.
-f|--force Använd det här alternativet om du vill skriva över befintliga filer.
-fi|--files Lista över semikolonavgränsade filer till byggnadsställningar. Använd alternativet -lf|--listFiles för att se tillgängliga alternativ.
-lf|--listFiles Visar filer som kan skapas med alternativet -fi|--files.
-rn|--rootNamespace Rotnamnområde som ska användas för att generera Identity kod.
-u|--userClass Namnet på den användarklass som ska genereras.

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator blazor-identity -h

Kontrollinställningar

Allmänna alternativ visas i följande tabell.

Option Description
-b|--bootstrapVersion Anger bootstrap-versionen och skapar en wwwroot mapp för Bootstrap-tillgångarna om mappen inte finns.
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen omfattar sqlserver (standard), sqlite, cosmos, postgres.
-dc|--dataContext Den databaskontextklass som ska användas eller namnet på den klass som ska genereras.
-f|--force Skriv över befintliga filer.
-l|--layout Anpassad layoutsida att använda.
-m|--model Modellklass som ska användas.
-outDir|--relativeFolderPath Relativ sökväg för utdatafolder Om det inte anges genereras filer i projektmappen.
-scripts|--referenceScriptLibraries Referensskriptbibliotek i de genererade vyerna. Lägger _ValidationScriptsPartial till i Edit och Create sidor.
-sqlite|--useSqlite Flagga för att ange om databaskontexten ska använda SQLite i stället för SQL Server.
-udl|--useDefaultLayout Använd standardlayouten för vyerna.

De alternativ som är unika för controller visas i följande tabell.

Option Description
-actions|--readWriteActions Generera kontrollant med läs-/skrivåtgärder utan modell.
-api|--restWithNoViews Generera en kontroller med REST stil-API. noViews antas och alla visningsrelaterade alternativ ignoreras.
-async|--useAsyncActions Generera asynkrona kontrollantåtgärder.
-name|--controllerName Namn på kontrollanten.
-namespace|--controllerNamespace Ange namnet på namnområdet som ska användas för den genererade kontrollanten.
-nv|--noViews Generera inga vyer.

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator controller -h

Ett exempel som använder generatorn finns i controllerDel 4, lägg till en modell i en ASP.NET Core MVC-app.

Identity Alternativ

Mer information finns i Scaffold Identity i ASP.NET Core-projekt.

Minimala API-alternativ

Skapa ett minimalt API-backend med mallen minimalapi.

Alternativen för minimalapi visas i följande tabell.

Option Description
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen är sqlserver (standard), sqlite, cosmoseller postgres.
-dc|--dataContext Databaskontextklass som ska användas.
-e|--endpoints Endpoints-klassen som ska användas (inte filnamnet).
-m|--model Modellklass som ska användas.
-namespace|--endpointsNamespace Ange namnet på namnområdet som ska användas för den genererade slutpunktsfilen.
-o|--open Använd det här alternativet för att aktivera OpenAPI.
-outDir|--relativeFolderPath Relativ sökväg för utdatafolder Om det inte anges genereras filer i projektmappen.
-sqlite|--useSqlite Flagga för att ange om databaskontexten ska använda SQLite i stället för SQL Server.

Följande exempel:

  • Genererar en slutpunktsklass med namnet SpeakersEndpoints med API-slutpunkter som mappar till databasåtgärder med hjälp av ApplicationDbContext databaskontextklassen BackEnd.Models.Speaker och modellen.
  • Lägger app.MapSpeakerEndpoints(); till i Program filen (Program.cs) för att registrera slutpunktsklassen.
dotnet aspnet-codegenerator minimalapi -dc ApplicationDbContext -e SpeakerEndpoints -m BackEnd.Models.Speaker -o

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator minimalapi -h

Razor sidalternativ

Razor Sidor kan skapas individuellt genom att ange namnet på den nya sidan och mallen som ska användas. Mallarna som stöds är:

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

Vanligtvis anges inte mallen och det genererade filnamnet, vilket skapar följande mallar:

  • Create
  • Edit
  • Delete
  • Details
  • List

Allmänna alternativ visas i följande tabell.

Option Description
-b|--bootstrapVersion Anger bootstrap-versionen och skapar en wwwroot mapp för Bootstrap-tillgångarna om mappen inte finns.
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen omfattar sqlserver (standard), sqlite, cosmos, postgres.
-dc|--dataContext Den databaskontextklass som ska användas eller namnet på den klass som ska genereras.
-f|--force Skriv över befintliga filer.
-l|--layout Anpassad layoutsida att använda.
-m|--model Modellklass som ska användas.
-outDir|--relativeFolderPath Relativ sökväg för utdatafolder Om det inte anges genereras filer i projektmappen.
-scripts|--referenceScriptLibraries Referensskriptbibliotek i de genererade vyerna. Lägger _ValidationScriptsPartial till i Edit och Create sidor.
-sqlite|--useSqlite Flagga för att ange om databaskontexten ska använda SQLite i stället för SQL Server.
-udl|--useDefaultLayout Använd standardlayouten för vyerna.

De alternativ som är unika för razorpage visas i följande tabell.

Option Description
-namespace|--namespaceName Namnet på namnområdet som ska användas för den genererade PageModel klassen.
-npm|--noPageModel Generera inte en PageModel klass för mallen Empty .
-partial|--partialView Generera en partiell vy. Layoutalternativ -l och -udl ignoreras om detta anges.

I följande exempel används mallen Edit för att generera CustomEditPage.cshtml och CustomEditPage.cshtml.cs i Pages/Movies mappen:

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

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator razorpage -h

Ett exempel som använder generatorn finns i razorpageDel 2, lägg till en modell.

Visa alternativ

Vyer kan genereras individuellt genom att ange namnet på vyn och mallen. Mallarna som stöds är:

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

Allmänna alternativ visas i följande tabell.

Option Description
-b|--bootstrapVersion Anger bootstrap-versionen och skapar en wwwroot mapp för Bootstrap-tillgångarna om mappen inte finns.
-dbProvider|--databaseProvider Databasprovider som ska användas. Alternativen omfattar sqlserver (standard), sqlite, cosmos, postgres.
-dc|--dataContext Den databaskontextklass som ska användas eller namnet på den klass som ska genereras.
-f|--force Skriv över befintliga filer.
-l|--layout Anpassad layoutsida att använda.
-m|--model Modellklass som ska användas.
-outDir|--relativeFolderPath Relativ sökväg för utdatafolder Om det inte anges genereras filer i projektmappen.
-scripts|--referenceScriptLibraries Referensskriptbibliotek i de genererade vyerna. Lägger _ValidationScriptsPartial till i Edit och Create sidor.
-sqlite|--useSqlite Flagga för att ange om databaskontexten ska använda SQLite i stället för SQL Server.
-udl|--useDefaultLayout Använd standardlayouten för vyerna.

De alternativ som är unika för view visas i följande tabell.

Option Description
-namespace|--controllerNamespace Ange namnet på namnområdet som ska användas för den genererade kontrollanten.
-partial|--partialView Generera en partiell vy. Andra layoutalternativ (-l och -udl) ignoreras om detta anges.

I följande exempel används mallen Edit för att generera CustomEditView.cshtml i Views/Movies mappen:

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

Använd alternativet -h|--help för hjälp:

dotnet aspnet-codegenerator view -h