Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article s’applique à : ✔️ SDK .NET Core 6 et versions ultérieures
Nom
dotnet new : crée un projet, un fichier de configuration ou une solution en fonction du modèle spécifié.
Synopsis
dotnet new <TEMPLATE> [--dry-run] [--force] [-lang|--language {"C#"|"F#"|VB}]
[-n|--name <OUTPUT_NAME>] [-f|--framework <FRAMEWORK>] [--no-update-check]
[-o|--output <OUTPUT_DIRECTORY>] [--project <PROJECT_PATH>]
[-d|--diagnostics] [--verbosity <LEVEL>] [Template options]
dotnet new -h|--help
Description
La commande dotnet new crée un projet .NET ou d’autres artefacts basés sur un modèle.
La commande appelle le moteur de modèles pour créer les artefacts sur le disque en fonction du modèle et des options spécifiés.
Notes
À compter du SDK .NET 7, la syntaxe dotnet new a changé :
- Les options
--list,--search,--installet--uninstallsont devenues les sous-commandeslist,search,installetuninstall. - L’option
--update-applyest devenue la sous-commandeupdate. - Pour utiliser
--update-check, utilisez la sous-commandeupdateavec l’option--check-only.
D’autres options disponibles avant sont toujours disponibles pour être utilisées avec leurs sous-commandes respectives.
Une aide distincte pour chaque sous-commande est disponible via l’option -h ou l’option --help : dotnet new <subcommand> --help répertorie toutes les options prises en charge pour la sous-commande.
En outre, la saisie semi-automatique est désormais disponible pour dotnet new. Elle prend en charge la saisie semi-automatique pour les noms de modèles installés et pour les options fournies par le modèle sélectionné.
Pour activer la saisie semi-automatique dans le SDK .NET, consultez Activer la saisie semi-automatique.
Saisie semi-automatique via la touche Tab
À compter du SDK .NET 7.0.100, la saisie semi-automatique est disponible pour dotnet new. Elle prend en charge la saisie semi-automatique pour les noms de modèles installés ainsi que pour les options fournies par le modèle sélectionné.
Pour activer la saisie semi-automatique dans le SDK .NET, consultez Activer la saisie semi-automatique.
Restauration implicite
Vous n’avez pas besoin d’exécuter dotnet restore, car il est exécuté implicitement par toutes les commandes qui nécessitent une restauration pour se produire, comme dotnet new, dotnet build, dotnet run, dotnet test, dotnet publish et dotnet pack. Pour désactiver la restauration implicite, utilisez l’option --no-restore .
La commande dotnet restore est toujours utile dans certains scénarios où la restauration explicite est logique, comme les builds d’intégration continue dans Azure DevOps Services ou dans les systèmes de génération qui doivent contrôler explicitement le moment où la restauration se produit.
Pour plus d’informations sur la gestion des flux NuGet, consultez la documentation dotnet restore.
Arguments
TEMPLATEModèle à instancier quand la commande est appelée. Vous pouvez passer des options spécifiques pour chaque modèle. Pour plus d'informations, consultez Options de modèle.
Vous pouvez exécuter
dotnet new listpour afficher la liste de tous les modèles installés.La
searchcommande doit être utilisée pour rechercher des modèles dans NuGet.org.Pour obtenir la liste des modèles fournis avec le Kit de développement logiciel (SDK) .NET, consultez les modèles préinstallés.
Options
--dry-runAffiche un récapitulatif de ce qui se passerait si la commande donnée était exécutée (si cela donnerait lieu à la création d’un modèle).
--forceForce le contenu à être généré même s’il change les fichiers existants. Ceci est nécessaire lorsque le modèle choisi remplace les fichiers existants dans le répertoire de sortie.
-
-?|-h|--helpImprime une description de l’utilisation de la commande.
-lang|--language {C#|F#|VB}Langage du modèle à créer. Le langage accepté diffère selon le modèle (voir les valeurs par défaut dans la section arguments). Non valide pour certains modèles.
Notes
Certains interpréteurs interprètent la commande
#comme un caractère spécial. Dans ces cas, placez la valeur du paramètre de langage entre guillemets. Par exemple :dotnet new console -lang "F#".-n|--name <OUTPUT_NAME>Le nom de la sortie créée. Si aucun nom n’est spécifié, le nom du répertoire actif est utilisé.
-f|--framework <FRAMEWORK>Spécifie le framework cible. Elle attend un moniker de framework cible. Exemples : « net6.0 », « net7.0-macos ». Cette valeur est reflétée dans le fichier projet.
-no-update-checkDésactive la vérification des mises à jour du package de modèle lors de l’instanciation d’un modèle. Disponible depuis .NET SDK 6.0.100. Lors de l’instanciation du modèle à partir d’un package de modèle installé à l’aide de
dotnet new --install,dotnet newvérifie s’il existe une mise à jour pour le modèle. À compter de .NET 6, aucune vérification des mises à jour n’est effectuée pour les modèles .NET par défaut. Pour mettre à jour les modèles .NET par défaut, installez la version corrective du SDK .NET.-o|--output <OUTPUT_DIRECTORY>Emplacement où placer la sortie générée. L'emplacement par défaut est le répertoire actif.
--project <PROJECT_PATH>Projet auquel le modèle est ajouté. Ce projet est utilisé pour l’évaluation du contexte. S’il n’est pas spécifié, le projet dans les répertoires actuels ou parents est utilisé. Disponible depuis .NET SDK 7.0.100.
-d|--diagnosticsActive la sortie de diagnostic. Disponible depuis .NET SDK 7.0.100.
-
-v|--verbosity <LEVEL>Définit le niveau de détail de la commande. Les valeurs autorisées sont
q[uiet],m[inimal],n[ormal],d[etailed]etdiag[nostic]. Pour plus d’informations, consultez LoggerVerbosity.
Options de modèle
Chaque modèle peut avoir des options supplémentaires définies. Pour plus d’informations, consultez Modèles .NET par défaut pour dotnet new.
Exemples
Créez un projet d’application console C# :
dotnet new consoleCréez un projet d’application console F# dans le répertoire actif :
dotnet new console --language "F#"Créez un projet de bibliothèque de classes .NET Standard 2.0 dans le répertoire spécifié :
dotnet new classlib --framework "netstandard2.0" -o MyLibraryCréez un projet ASP.NET Core C# MVC dans le répertoire actif sans authentification :
dotnet new mvc -au NoneCréez un projet xUnit :
dotnet new xunitCréez un global.json dans le répertoire actif définissant la version du Kit de développement logiciel (SDK) sur 8.0.101 :
dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeatureAffichez l’aide pour le modèle d’application console C# :
dotnet new console -hAffichez l’aide pour le modèle d’application console F# :
dotnet new console --language "F#" -h