Outil générateur de code ASP.NET Core (aspnet-codegenerator)

Remarque

Ceci n’est pas la dernière version de cet article. Pour la version actuelle, consultez la version .NET 9 de cet article.

Avertissement

Cette version d’ASP.NET Core n’est plus prise en charge. Pour plus d’informations, consultez la stratégie de support .NET et .NET Core. Pour la version actuelle, consultez la version .NET 9 de cet article.

Important

Ces informations portent sur la préversion du produit, qui est susceptible d’être en grande partie modifié avant sa commercialisation. Microsoft n’offre aucune garantie, expresse ou implicite, concernant les informations fournies ici.

Pour la version actuelle, consultez la version .NET 9 de cet article.

La commande dotnet aspnet-codegenerator exécute le moteur de génération automatique de modèles ASP.NET Core. L’exécution de la commande dotnet aspnet-codegenerator est nécessaire pour générer automatiquement des modèles à partir de la ligne de commande ou lors de l’utilisation de Visual Studio Code. La commande n’est pas nécessaire pour utiliser la génération automatique de modèles avec Visual Studio, qui inclut le moteur de génération par défaut.

Installation et mise à jour de l’outil générateur de code

Installez le Kit de développement logiciel (SDK) pour .NET.

dotnet aspnet-codegenerator est un outil global qui doit être installé. La commande suivante installe la dernière version stable de l’outil générateur de code ASP.NET Core :

dotnet tool install -g dotnet-aspnet-codegenerator

Remarque

Par défaut, l’architecture des fichiers binaires .NET à installer représente l’architecture du système d’exploitation en cours d’exécution. Pour spécifier une architecture de système d’exploitation différente, consultez dotnet tool install, --arch option. Pour plus d'informations, consultez le problème GitHub dotnet/AspNetCore.Docs n° 29262.

Si l’outil est déjà installé, la commande suivante met à jour l’outil vers la dernière version stable disponible à partir des SDK .NET Core installés :

dotnet tool update -g dotnet-aspnet-codegenerator

Désinstallation de l’outil générateur de code

Il peut être nécessaire de désinstaller l’outil générateur de code principal ASP.NET Core pour résoudre les problèmes. Par exemple, si vous avez installé une version préliminaire de l’outil, désinstallez-la avant d’installer la version mise sur le marché.

Les commandes suivantes désinstallent l’outil générateur de code ASP.NET Core et installent la dernière version stable :

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

La commande globale dotnet aspnet-codegenerator exécute le générateur de code ASP.NET Core et le moteur de génération de modèles automatique.

Arguments

generator

Le générateur de code à effectuer. Les générateurs disponibles sont affichés dans le tableau suivant.

Générateur Operation
area Génère automatiquement des modèles pour une zone.
blazor Les générateurs Blazor créent, lisent, mettent à jour, suppriment et répertorient des pages.
blazor-identity Génère des fichiers Identity Blazor.
controller Génère automatiquement des modèles pour un contrôleur.
identity Génère automatiquement des modèles Identity.
minimalapi Génère un fichier de points de terminaison (avec des points de terminaison d’API CRUD) à partir d’un modèle et d’un contexte de base de données facultatif.
razorpage Génère automatiquement des modèles de pages Razor.
view Génère automatiquement des modèles pour une vue.
Générateur Operation
area Génère automatiquement des modèles pour une zone.
controller Génère automatiquement des modèles pour un contrôleur.
identity Génère automatiquement des modèles Identity.
minimalapi Génère un fichier de points de terminaison (avec des points de terminaison d’API CRUD) à partir d’un modèle et d’un contexte de base de données facultatif.
razorpage Génère automatiquement des modèles de pages Razor.
view Génère automatiquement des modèles pour une vue.

Options

-b|--build-base-path

Le chemin de base de génération.

-c|--configuration {Debug|Release}

Définit la configuration de build. La valeur par défaut est Debug.

-h|--help

Affiche une aide brève pour la commande.

-n|--nuget-package-dir

Spécifie le répertoire du package NuGet.

--no-build

Ne génère pas le projet avant l’exécution. Le passage de --no-build définit également implicitement l’indicateur --no-restore.

-p|--project <PATH>

Spécifie le chemin du fichier projet à exécuter (nom de dossier ou chemin complet). Si aucune valeur n’est spécifiée, l’outil utilise par défaut le répertoire actuel.

-tfm|--target-framework

L’infrastructure cible à utiliser.

Options du générateur

Les sections suivantes décrivent en détail les options disponibles pour les générateurs pris en charge :

Options de zone

Utilisation : dotnet aspnet-codegenerator area {AREA NAME}

L’espace réservé {AREA NAME} est le nom de la zone à générer.

La commande précédente génère les dossiers suivants :

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

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator area -h

Blazor options

Les composants Razor peuvent être générés automatiquement individuellement pour les applications Blazor en spécifiant le nom du modèle à utiliser. Les modèles pris en charge sont :

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List
  • CRUD: CRUD est un acronyme pour Create, Read, Update et Delete. Le modèle CRUD produit des composants Create, Edit, Delete, Details et Index (List) pour l’application.

Les options pour le générateur blazor sont présentées dans le tableau suivant.

Option Description
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut), sqlite, cosmos ou postgres.
-dc|--dataContext Classe de contexte de base de données à utiliser.
-m|--model Classe de modèle à utiliser.
-ns|--namespaceName Spécifier le nom de l’espace de noms à utiliser pour le fichier des points de terminaison générés.
--relativeFolderPath|-outDir Chemin d’accès relatif du dossier de sortie. S’il n’est pas spécifié, les fichiers sont générés dans le dossier du projet.

L’exemple suivant :

  • Utilise le modèle Edit pour générer un composant Edit (Edit.razor) dans le dossier Components/Pages/MoviePages de l’application. Si le dossier MoviePages n’existe pas, l’outil crée le dossier automatiquement.
  • Utilise le fournisseur de base de données SQLite.
  • Utilise BlazorWebAppMovies.Data.BlazorWebAppMoviesContext pour le contexte de la base de données.
  • Utilise le modèle Movie.
dotnet aspnet-codegenerator blazor Edit -dbProvider sqlite -dc BlazorWebAppMovies.Data.BlazorWebAppMoviesContext -m Movie -outDir Components/Pages

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator blazor -h

Pour obtenir un exemple qui utilise le blazor générateur, consultez Générer une Blazor application de base de données vidéo (Vue d’ensemble).

Pour plus d’informations, consultez Composant QuickGrid ASP.NET Core Blazor.

BlazorIdentity options

Générez automatiquement des composants Razor Identity dans une application Blazor avec le générateur blazor-identity.

Les options pour le modèle blazor-identity sont présentées dans le tableau suivant.

Option Description
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut) et sqlite.
-dc|--dataContext Classe de contexte de base de données à utiliser.
-f|--force Utilisez cette option pour remplacer les fichiers existants.
-fi|--files Liste des fichiers séparés par des points-virgules à utiliser pour générer automatiquement des modèles. Utilisez l’option -lf|--listFiles pour afficher les options disponibles.
-lf|--listFiles Répertorie les fichiers qui peuvent être générés automatiquement en utilisant l’option -fi|--files.
-rn|--rootNamespace Espace de noms racine à utiliser pour générer le code Identity.
-u|--userClass Nom de la classe d’utilisateur à générer.

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator blazor-identity -h

Options de contrôleur

Les options générales sont présentées dans le tableau suivant.

Option Description
-b|--bootstrapVersion Spécifie la version de démarrage et crée un dossier wwwroot pour les ressources de démarrage si le dossier n’est pas présent.
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut), sqlite, cosmos, postgres.
-dc|--dataContext La classe de contexte de base de données à utiliser ou le nom de la classe à générer.
-f|--force Remplacer les fichiers existants.
-l|--layout Page de disposition personnalisée à utiliser.
-m|--model Classe de modèle à utiliser.
-outDir|--relativeFolderPath Chemin d’accès relatif du dossier de sortie. S’il n’est pas spécifié, les fichiers sont générés dans le dossier du projet.
-scripts|--referenceScriptLibraries Référence les bibliothèques de scripts dans les vues générées. Ajoute _ValidationScriptsPartial aux pages Edit et Create.
-sqlite|--useSqlite Indicateur pour spécifier si le contexte de la base de données doit utiliser SQLite au lieu de SQL Server.
-udl|--useDefaultLayout Utiliser la disposition par défaut pour les vues.

Les options propres à controller sont présentées dans le tableau suivant.

Option Description
-actions|--readWriteActions Générer un contrôleur avec actions en lecture/écriture sans modèle.
-api|--restWithNoViews Générez un contrôleur avec l’API de style REST. noViews est supposé et les options associées à la vue sont ignorées.
-async|--useAsyncActions Générez des actions asynchrones du contrôleur.
-name|--controllerName Nom du contrôleur.
-namespace|--controllerNamespace Spécifiez le nom de l’espace de noms à utiliser pour le contrôleur généré.
-nv|--noViews Ne générer aucune vue.

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator controller -h

Pour un exemple qui utilise le générateur de , veuillez consulter la controllerPartie 4, ajouter un modèle à une application ASP.NET Core MVC.

Identity options

Pour plus d’informations, consultez Génération de modèles automatiqueIdentity dans les projets ASP.NET Core.

Options d’API minimales

Générez automatiquement des modèles d’un principal d’API minimale avec le modèle minimalapi.

Les options pour minimalapi sont présentées dans le tableau suivant.

Option Description
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut), sqlite, cosmos ou postgres.
-dc|--dataContext Classe de contexte de base de données à utiliser.
-e|--endpoints Classe de points de terminaison à utiliser (et non le nom du fichier).
-m|--model Classe de modèle à utiliser.
-namespace|--endpointsNamespace Spécifiez le nom de l’espace de noms à utiliser pour le fichier des points de terminaison générés.
-o|--open Utilisez cette option pour activer OpenAPI.
-outDir|--relativeFolderPath Chemin d’accès relatif du dossier de sortie. S’il n’est pas spécifié, les fichiers sont générés dans le dossier du projet.
-sqlite|--useSqlite Indicateur pour spécifier si le contexte de la base de données doit utiliser SQLite au lieu de SQL Server.

L’exemple suivant :

  • Génère une classe de points de terminaison nommée SpeakersEndpoints avec des points de terminaison d’API qui se mappent aux opérations de base de données en utilisant la classe de contexte de base de données ApplicationDbContext et le modèle BackEnd.Models.Speaker.
  • Ajoute app.MapSpeakerEndpoints(); au fichier Program (Program.cs) pour enregistrer la classe des points de terminaison.
dotnet aspnet-codegenerator minimalapi -dc ApplicationDbContext -e SpeakerEndpoints -m BackEnd.Models.Speaker -o

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator minimalapi -h

Options de page Razor

Razor Pages peut être structuré individuellement en spécifiant le nom de la nouvelle page et le modèle à utiliser. Les modèles pris en charge sont :

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

En règle générale, le modèle et le nom de fichier généré ne sont pas spécifiés, ce qui crée les modèles suivants :

  • Create
  • Edit
  • Delete
  • Details
  • List

Les options générales sont présentées dans le tableau suivant.

Option Description
-b|--bootstrapVersion Spécifie la version de démarrage et crée un dossier wwwroot pour les ressources de démarrage si le dossier n’est pas présent.
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut), sqlite, cosmos, postgres.
-dc|--dataContext La classe de contexte de base de données à utiliser ou le nom de la classe à générer.
-f|--force Remplacer les fichiers existants.
-l|--layout Page de disposition personnalisée à utiliser.
-m|--model Classe de modèle à utiliser.
-outDir|--relativeFolderPath Chemin d’accès relatif du dossier de sortie. S’il n’est pas spécifié, les fichiers sont générés dans le dossier du projet.
-scripts|--referenceScriptLibraries Référence les bibliothèques de scripts dans les vues générées. Ajoute _ValidationScriptsPartial aux pages Edit et Create.
-sqlite|--useSqlite Indicateur pour spécifier si le contexte de la base de données doit utiliser SQLite au lieu de SQL Server.
-udl|--useDefaultLayout Utiliser la disposition par défaut pour les vues.

Les options propres à razorpage sont présentées dans le tableau suivant.

Option Description
-namespace|--namespaceName Le nom de l’espace de noms à utiliser pour la classe PageModel générée.
-npm|--noPageModel Ne générez pas de classe PageModel pour le modèle Empty.
-partial|--partialView Générer une vue partielle. Les options de mise en page -l et -udl sont ignorées si ceci est spécifié.

L’exemple suivant utilise le modèle Edit pour générer CustomEditPage.cshtml et CustomEditPage.cshtml.cs dans le dossier Pages/Movies :

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

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator razorpage -h

Pour un exemple qui utilise le générateur de razorpage, veuillez consulter la Partie 2, ajouter un modèle.

Options d’affichage

Les vues peuvent être générées automatiquement individuellement en spécifiant le nom de la vue et le modèle. Les modèles pris en charge sont :

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

Les options générales sont présentées dans le tableau suivant.

Option Description
-b|--bootstrapVersion Spécifie la version de démarrage et crée un dossier wwwroot pour les ressources de démarrage si le dossier n’est pas présent.
-dbProvider|--databaseProvider Fournisseur de base de données à utiliser. Les options incluent sqlserver (par défaut), sqlite, cosmos, postgres.
-dc|--dataContext La classe de contexte de base de données à utiliser ou le nom de la classe à générer.
-f|--force Remplacer les fichiers existants.
-l|--layout Page de disposition personnalisée à utiliser.
-m|--model Classe de modèle à utiliser.
-outDir|--relativeFolderPath Chemin d’accès relatif du dossier de sortie. S’il n’est pas spécifié, les fichiers sont générés dans le dossier du projet.
-scripts|--referenceScriptLibraries Référence les bibliothèques de scripts dans les vues générées. Ajoute _ValidationScriptsPartial aux pages Edit et Create.
-sqlite|--useSqlite Indicateur pour spécifier si le contexte de la base de données doit utiliser SQLite au lieu de SQL Server.
-udl|--useDefaultLayout Utiliser la disposition par défaut pour les vues.

Les options propres à view sont présentées dans le tableau suivant.

Option Description
-namespace|--controllerNamespace Spécifiez le nom de l’espace de noms à utiliser pour le contrôleur généré.
-partial|--partialView Générer une vue partielle. Les autres options de mise en page (-l et -udl) sont ignorées si ceci est spécifié.

L’exemple suivant utilise le modèle Edit pour générer CustomEditView.cshtml dans le dossier Views/Movies :

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

Utilisez l’option -h|--help pour obtenir de l’aide :

dotnet aspnet-codegenerator view -h