ASP.NET Core-tool voor codegeneratie (aspnet-codegenerator
)
Notitie
Dit is niet de nieuwste versie van dit artikel. Zie de .NET 9-versie van dit artikelvoor de huidige release.
Waarschuwing
Deze versie van ASP.NET Core wordt niet meer ondersteund. Zie de .NET- en .NET Core-ondersteuningsbeleidvoor meer informatie. Zie de .NET 9-versie van dit artikelvoor de huidige release.
Belangrijk
Deze informatie heeft betrekking op een pre-releaseproduct dat aanzienlijk kan worden gewijzigd voordat het commercieel wordt uitgebracht. Microsoft geeft geen garanties, uitdrukkelijk of impliciet, met betrekking tot de informatie die hier wordt verstrekt.
Zie de .NET 9-versie van dit artikelvoor de huidige release.
Met de opdracht dotnet aspnet-codegenerator
wordt de ASP.NET Core-scaffolding-engine uitgevoerd. Het uitvoeren van de opdracht dotnet aspnet-codegenerator
is vereist om vanaf de opdrachtregel of bij het gebruik van Visual Studio Code een scaffold te genereren. De opdracht is niet vereist voor het gebruik van scaffolding met Visual Studio, dat standaard de scaffolding-engine bevat.
Het hulpprogramma voor het genereren van code installeren en bijwerken
Installeer de .NET SDK-.
dotnet aspnet-codegenerator
is een algemeen hulpprogramma dat moet worden geïnstalleerd. Met de volgende opdracht wordt de meest recente stabiele versie van het hulpprogramma ASP.NET Core-codegenerator geïnstalleerd:
dotnet tool install -g dotnet-aspnet-codegenerator
Notitie
De architectuur van de binaire .NET-bestanden die moeten worden geïnstalleerd, vertegenwoordigt standaard de huidige besturingssysteemarchitectuur. Zie dotnet tool install, --arch optionom een andere besturingssysteemarchitectuur op te geven. Zie GitHub-probleem dotnet/AspNetCore.Docs #29262voor meer informatie.
Als het hulpprogramma al is geïnstalleerd, werkt de volgende opdracht het hulpprogramma bij naar de nieuwste stabiele versie die beschikbaar is via de geïnstalleerde .NET Core SDK's:
dotnet tool update -g dotnet-aspnet-codegenerator
Het hulpprogramma voor het genereren van code verwijderen
Het kan nodig zijn om het hulpprogramma voor het genereren van ASP.NET Core-code te verwijderen om problemen op te lossen. Als u bijvoorbeeld een preview-versie van het hulpprogramma hebt geïnstalleerd, verwijdert u deze voordat u de uitgebrachte versie installeert.
Met de volgende opdrachten verwijdert u het hulpprogramma ASP.NET Core-codegenerator en installeert u de nieuwste stabiele versie:
dotnet tool uninstall -g dotnet-aspnet-codegenerator
dotnet tool install -g dotnet-aspnet-codegenerator
Samenvatting
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]
Beschrijving
Met de dotnet aspnet-codegenerator
globale opdracht wordt de ASP.NET Core-codegenerator en de scaffolding-engine uitgevoerd.
Argumenten
generator
De codegenerator die moet worden uitgevoerd. De beschikbare generatoren worden weergegeven in de volgende tabel.
Generator | Operatie |
---|---|
area |
Ondersteunt een gebied. |
blazor |
scaffolds Blazor pagina's maken, lezen, bijwerken, verwijderen en lijstpagina's. |
blazor-identity |
Hiermee worden BlazorIdentity bestanden gegenereerd. |
controller |
Genereert een controller. |
identity |
scaffolds Identity. |
minimalapi |
Genereert een eindpuntbestand (met CRUD API-eindpunten) op basis van een model en optionele databasecontext. |
razorpage |
Steigers Razor Pagina's. |
view |
Scaffolds een weergave. |
Generator | Operatie |
---|---|
area |
Ondersteunt de opbouw van een gebied. |
controller |
Maakt sjablonen voor een controller. |
identity |
scaffolds Identity. |
minimalapi |
Genereert een eindpuntbestand (met CRUD API-eindpunten) op basis van een model en optionele databasecontext. |
razorpage |
Scaffolds Razor Pages. |
view |
Bouwt een weergave op. |
Opties
-b|--build-base-path
Het basispad voor de build.
-c|--configuration {Debug|Release}
Definieert de buildconfiguratie. De standaardwaarde is Debug
.
-h|--help
Hiermee drukt u een kort hulpbericht voor het commando af.
-n|--nuget-package-dir
Specificeert de NuGet-pakketdirectory.
--no-build
Bouwt het project niet voordat het wordt uitgevoerd. Als u --no-build
doorgeeft, wordt de --no-restore
vlag ook impliciet ingesteld.
-p|--project <PATH>
Hiermee geeft u het pad van het projectbestand dat moet worden uitgevoerd (mapnaam of volledig pad). Als dit niet is opgegeven, wordt het hulpprogramma standaard ingesteld op de huidige map.
-tfm|--target-framework
Het te gebruiken doelframework .
Generatoropties
In de volgende secties worden de opties beschreven die beschikbaar zijn voor de ondersteunde generatoren:
Gebiedsopties
Gebruik: dotnet aspnet-codegenerator area {AREA NAME}
De tijdelijke aanduiding {AREA NAME}
is de naam van het gebied dat moet worden gegenereerd.
Met de voorgaande opdracht worden de volgende mappen gegenereerd:
Areas
{AREA NAME}
Controllers
Data
Models
Views
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator area -h
Blazor opties
Razor onderdelen kunnen afzonderlijk worden ingericht voor Blazor apps door de naam op te geven van de sjabloon die moet worden gebruikt. De ondersteunde sjablonen zijn:
Empty
Create
Edit
Delete
Details
List
-
CRUD
: CRUD- is een acroniem voor Maken, Lezen, Bijwerken en Verwijderen. De sjabloonCRUD
produceertCreate
,Edit
,Delete
,Details
enIndex
(List
) onderdelen voor de app.
De opties voor de blazor
generator worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-dbProvider|--databaseProvider |
Databaseprovider om te gebruiken. Opties zijn onder andere sqlserver (standaard), sqlite , cosmos of postgres . |
-dc|--dataContext |
Te gebruiken databasecontextklasse. |
-m|--model |
Modelklasse die moet worden gebruikt. |
-ns|--namespaceName |
Geef de naam op van de naamruimte die moet worden gebruikt voor het gegenereerde eindpuntbestand. |
--relativeFolderPath|-outDir |
Pad naar relatieve uitvoermap. Als dit niet is opgegeven, worden bestanden gegenereerd in de projectmap. |
Het volgende voorbeeld:
- Hiermee wordt de
Edit
-sjabloon gebruikt om eenEdit
-onderdeel (Edit.razor
) te genereren in de mapComponents/Pages/MoviePages
van de app. Als de mapMoviePages
niet bestaat, wordt de map automatisch gemaakt. - Maakt gebruik van de SQLite-databaseprovider.
- Gebruikt
BlazorWebAppMovies.Data.BlazorWebAppMoviesContext
voor de databasecontext. - Maakt gebruik van het
Movie
-model.
dotnet aspnet-codegenerator blazor Edit -dbProvider sqlite -dc BlazorWebAppMovies.Data.BlazorWebAppMoviesContext -m Movie -outDir Components/Pages
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator blazor -h
Zie Een Blazor filmdatabase-app (Overzicht) bouwenvoor een voorbeeld dat gebruikmaakt van de blazor
generator.
Zie ASP.NET Core BlazorQuickGridcomponentvoor meer informatie.
opties voor BlazorIdentity
Scaffold IdentityRazor onderdelen in een Blazor-app met de blazor-identity
generator.
De opties voor de sjabloon blazor-identity
worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-dbProvider|--databaseProvider |
Databaseprovider te gebruiken. Opties zijn onder andere sqlserver (standaard) en sqlite . |
-dc|--dataContext |
Te gebruiken databasecontextklasse. |
-f|--force |
Gebruik deze optie om bestaande bestanden te overschrijven. |
-fi|--files |
Lijst met door puntkomma's gescheiden bestanden voor scaffold. Gebruik de optie -lf|--listFiles om de beschikbare opties weer te geven. |
-lf|--listFiles |
Geeft een lijst weer van de bestanden die kunnen worden ge scaffolded met behulp van de optie -fi|--files . |
-rn|--rootNamespace |
Hoofdnaamruimte die moet worden gebruikt voor het genereren van Identity code. |
-u|--userClass |
De naam van de gebruikersklasse die moet worden gegenereerd. |
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator blazor-identity -h
Controlleropties
Algemene opties worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-b|--bootstrapVersion |
Specificeert de bootstrap-versie en maakt een wwwroot map voor de Bootstrap-assets als deze map niet aanwezig is. |
-dbProvider|--databaseProvider |
Databaseprovider gebruiken. Opties zijn onder andere sqlserver (standaard), sqlite , cosmos , postgres . |
-dc|--dataContext |
De databasecontextklasse die moet worden gebruikt of de naam van de klasse die moet worden gegenereerd. |
-f|--force |
Bestaande bestanden overschrijven. |
-l|--layout |
Aangepaste indelingspagina die moet worden gebruikt. |
-m|--model |
Modelklasse die moet worden gebruikt. |
-outDir|--relativeFolderPath |
Relatief pad van de uitvoermap. Als dit niet is opgegeven, worden bestanden gegenereerd in de projectmap. |
-scripts|--referenceScriptLibraries |
Verwijs naar scriptbibliotheken in de gegenereerde weergaven. Voegt _ValidationScriptsPartial toe aan Edit en Create pagina's. |
-sqlite|--useSqlite |
Vlag om op te geven of de databasecontext SQLite moet gebruiken in plaats van SQL Server. |
-udl|--useDefaultLayout |
Gebruik de standaardindeling voor de weergaven. |
De opties die uniek zijn voor controller
worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-actions|--readWriteActions |
Een controller genereren met lees-/schrijfacties zonder een model. |
-api|--restWithNoViews |
Genereer een controller met REST stijl-API. Er wordt aangenomen dat noViews geldt, en alle weergave-gerelateerde opties worden genegeerd. |
-async|--useAsyncActions |
Asynchrone controlleracties genereren. |
-name|--controllerName |
Naam van de controller. |
-namespace|--controllerNamespace |
Geef de naam op van de naamruimte die moet worden gebruikt voor de gegenereerde controller. |
-nv|--noViews |
Genereer geen weergaven. |
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator controller -h
Identity opties
Zie Scaffold Identity in ASP.NET Core-projectenvoor meer informatie.
Minimale API-opties
Maak een Minimal API-backend met de minimalapi
-sjabloon.
De opties voor minimalapi
worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-dbProvider|--databaseProvider |
Te gebruiken databaseprovider. Opties zijn onder andere sqlserver (standaard), sqlite , cosmos of postgres . |
-dc|--dataContext |
Te gebruiken databasecontextklasse. |
-e|--endpoints |
Eindpuntklasse die moet worden gebruikt (niet de bestandsnaam). |
-m|--model |
Modelklasse die moet worden gebruikt. |
-namespace|--endpointsNamespace |
Geef de naam op van de naamruimte die moet worden gebruikt voor het gegenereerde eindpuntbestand. |
-o|--open |
Gebruik deze optie om OpenAPI in te schakelen. |
-outDir|--relativeFolderPath |
Pad naar relatieve uitvoermap. Als dit niet is opgegeven, worden bestanden gegenereerd in de projectmap. |
-sqlite|--useSqlite |
Vlag om op te geven of de databasecontext SQLite moet gebruiken in plaats van SQL Server. |
Het volgende voorbeeld:
- Hiermee genereert u een eindpuntklasse met de naam
SpeakersEndpoints
met API-eindpunten die worden toegewezen aan databasebewerkingen met behulp van de contextklasse van deApplicationDbContext
-database en hetBackEnd.Models.Speaker
-model. - Voegt
app.MapSpeakerEndpoints();
toe aan hetProgram
-bestand (Program.cs
) om de eindpuntklasse te registreren.
dotnet aspnet-codegenerator minimalapi -dc ApplicationDbContext -e SpeakerEndpoints -m BackEnd.Models.Speaker -o
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator minimalapi -h
Razor paginaopties
Razor Pagina's kunnen afzonderlijk worden ingericht door de naam van de nieuwe pagina en de te gebruiken sjabloon op te geven. De ondersteunde sjablonen zijn:
Empty
Create
Edit
Delete
Details
List
Normaal gesproken wordt de sjabloon en gegenereerde bestandsnaam niet opgegeven, waardoor de volgende sjablonen worden gemaakt:
Create
Edit
Delete
Details
List
Algemene opties worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-b|--bootstrapVersion |
Hiermee wordt de bootstrap-versie gespecificeerd en wordt er een wwwroot map gemaakt voor de Bootstrap-bestanden als de map niet aanwezig is. |
-dbProvider|--databaseProvider |
Te gebruiken databaseprovider. Opties zijn onder andere sqlserver (standaard), sqlite , cosmos , postgres . |
-dc|--dataContext |
De databasecontextklasse die moet worden gebruikt of de naam van de klasse die moet worden gegenereerd. |
-f|--force |
Bestaande bestanden overschrijven. |
-l|--layout |
Aangepaste indelingspagina die moet worden gebruikt. |
-m|--model |
Modelklasse die moet worden gebruikt. |
-outDir|--relativeFolderPath |
Relatief pad van de uitvoermap. Als dit niet is opgegeven, worden bestanden gegenereerd in de projectmap. |
-scripts|--referenceScriptLibraries |
Verwijs naar scriptbibliotheken in de gegenereerde weergaven. Voegt _ValidationScriptsPartial toe aan Edit en Create pagina's. |
-sqlite|--useSqlite |
Vlag om op te geven of de databasecontext SQLite moet gebruiken in plaats van SQL Server. |
-udl|--useDefaultLayout |
Gebruik de standaardindeling voor de weergaven. |
De opties die uniek zijn voor razorpage
worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-namespace|--namespaceName |
De naam van de naamruimte die moet worden gebruikt voor de gegenereerde PageModel -klasse. |
-npm|--noPageModel |
Genereer geen PageModel klasse voor de Empty -sjabloon. |
-partial|--partialView |
Genereer een gedeeltelijke weergave. Indelingsopties -l en -udl worden genegeerd als dit is opgegeven. |
In het volgende voorbeeld wordt de Edit
-sjabloon gebruikt om CustomEditPage.cshtml
en CustomEditPage.cshtml.cs
te genereren in de map Pages/Movies
:
dotnet aspnet-codegenerator razorpage CustomEditPage Edit -dc RazorPagesMovieContext -m Movie -outDir Pages/Movies
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator razorpage -h
Zie deel 2 voor een voorbeeld waarin de razorpage
-generator wordt gebruikt, een modeltoevoegen.
Weergaveopties
Weergaven kunnen afzonderlijk worden ingericht door de naam van de weergave en de sjabloon op te geven. De ondersteunde sjablonen zijn:
Empty
Create
Edit
Delete
Details
List
Algemene opties worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-b|--bootstrapVersion |
Geeft de bootstrap-versie op en maakt een wwwroot -map voor de Bootstrap-assets indien deze nog niet bestaat. |
-dbProvider|--databaseProvider |
Databaseprovider te gebruiken. Opties zijn onder andere sqlserver (standaard), sqlite , cosmos , postgres . |
-dc|--dataContext |
De databasecontextklasse die moet worden gebruikt of de naam van de klasse die moet worden gegenereerd. |
-f|--force |
Bestaande bestanden overschrijven. |
-l|--layout |
Aangepaste indelingspagina om te gebruiken. |
-m|--model |
Modelklasse die moet worden gebruikt. |
-outDir|--relativeFolderPath |
Relatief pad naar de uitvoermap. Als dit niet is opgegeven, worden bestanden gegenereerd in de projectmap. |
-scripts|--referenceScriptLibraries |
Neem referentie op naar scriptbibliotheken in de gegenereerde weergaven. Voegt _ValidationScriptsPartial toe aan Edit en Create pagina's. |
-sqlite|--useSqlite |
Vlag om op te geven of de databasecontext SQLite moet gebruiken in plaats van SQL Server. |
-udl|--useDefaultLayout |
Gebruik de standaardindeling voor de weergaven. |
De opties die uniek zijn voor view
worden weergegeven in de volgende tabel.
Optie | Beschrijving |
---|---|
-namespace|--controllerNamespace |
Geef de naam op van de naamruimte die moet worden gebruikt voor de gegenereerde controller. |
-partial|--partialView |
Genereer een gedeeltelijke weergave. Andere indelingsopties (-l en -udl ) worden genegeerd als dit is opgegeven. |
In het volgende voorbeeld wordt de Edit
-sjabloon gebruikt om CustomEditView.cshtml
te genereren in de map Views/Movies
:
dotnet aspnet-codegenerator view CustomEditView Edit -dc MovieContext -m Movie -outDir Views/Movies
Gebruik de optie -h|--help
voor hulp:
dotnet aspnet-codegenerator view -h