Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel is van toepassing op: ✔️ .NET 6 SDK en latere versies
Naam
dotnet new - Hiermee maakt u een nieuw project, configuratiebestand of een nieuwe oplossing op basis van de opgegeven sjabloon.
Samenvatting
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
Beschrijving
Met de dotnet new opdracht maakt u een .NET-project of andere artefacten op basis van een sjabloon.
Met de opdracht wordt de sjabloonengine aanroepen om de artefacten op schijf te maken op basis van de opgegeven sjabloon en opties.
Notitie
Vanaf de .NET 7 SDK is de dotnet new syntaxis gewijzigd:
- De
--listopties ,--searchen--install--uninstallopties werdenlist,searcheninstalluninstallsubopdrachten. - De
--update-applyoptie werd deupdatesubopdracht. - Als u wilt gebruiken
--update-check, gebruikt u deupdatesubopdracht met de--check-onlyoptie.
Andere opties die eerder beschikbaar waren, zijn nog steeds beschikbaar voor gebruik met hun respectieve subopdrachten.
Afzonderlijke hulp voor elke subopdracht is beschikbaar via de -h of --help optie: dotnet new <subcommand> --help een lijst met alle ondersteunde opties voor de subopdracht.
Bovendien is tabvoltooiing nu beschikbaar voor dotnet new. Het ondersteunt voltooiing voor geïnstalleerde sjabloonnamen en voor de opties die een geselecteerde sjabloon biedt.
Zie Tabvoltooiing inschakelen voor de .NET SDK om de tabvoltooiing te activeren.
Tabvoltooiing
Vanaf .NET SDK 7.0.100 is tabvoltooiing beschikbaar voor dotnet new. Het ondersteunt voltooiing voor geïnstalleerde sjabloonnamen, evenals voltooiing voor de opties die een geselecteerde sjabloon biedt.
Zie Tabvoltooiing inschakelen voor de .NET SDK om de tabvoltooiing te activeren.
Impliciete herstelbewerking
U hoeft niet uit te voeren dotnet restore omdat deze impliciet wordt uitgevoerd door alle opdrachten waarvoor een herstelbewerking moet worden uitgevoerd, zoals dotnet new, dotnet build, , dotnet run, dotnet test, , en dotnet publish.dotnet pack Als u impliciete herstel wilt uitschakelen, gebruikt u de --no-restore optie.
De dotnet restore opdracht is nog steeds nuttig in bepaalde scenario's waarbij het expliciet herstellen zinvol is, zoals builds voor continue integratie in Azure DevOps Services of in buildsystemen die expliciet moeten worden beheerd wanneer de herstelbewerking plaatsvindt.
Zie de dotnet restore documentatie voor informatie over het beheren van NuGet-feeds.
Argumenten
TEMPLATEDe sjabloon die moet worden geïnstitueerd wanneer de opdracht wordt aangeroepen. Elke sjabloon kan specifieke opties bevatten die u kunt doorgeven. Zie Sjabloonopties voor meer informatie.
U kunt uitvoeren
dotnet new listom een lijst met alle geïnstalleerde sjablonen weer te geven.De
searchopdracht moet worden gebruikt om te zoeken naar sjablonen in NuGet.org.Zie Vooraf geïnstalleerde sjablonen voor een lijst met sjablonen die worden verzonden met de .NET SDK.
Opties
--dry-runGeeft een samenvatting weer van wat er zou gebeuren als de opgegeven opdracht werd uitgevoerd als dit zou leiden tot het maken van een sjabloon.
--forceDwingt af dat inhoud wordt gegenereerd, zelfs als deze bestaande bestanden zou wijzigen. Dit is vereist wanneer de gekozen sjabloon bestaande bestanden in de uitvoermap overschrijft.
-
-?|-h|--helpHiermee wordt een beschrijving afgedrukt van hoe de opdracht gebruikt moet worden.
-lang|--language {C#|F#|VB}De taal van de sjabloon die moet worden gemaakt. De taal die wordt geaccepteerd, verschilt per sjabloon (zie de standaardinstellingen in de sectie argumenten ). Niet geldig voor sommige sjablonen.
Notitie
Sommige shells interpreteren
#als een speciaal teken. In die gevallen plaatst u de waarde van de taalparameter tussen aanhalingstekens. Bijvoorbeeld:dotnet new console -lang "F#".-n|--name <OUTPUT_NAME>De naam voor de gemaakte uitvoer. Als er geen naam is opgegeven, wordt de naam van de huidige map gebruikt.
-f|--framework <FRAMEWORK>Hiermee geeft u het doelframework. Er wordt een target framework moniker (TFM) verwacht. Voorbeelden: 'net6.0', 'net7.0-macos'. Deze waarde wordt weergegeven in het projectbestand.
-no-update-checkSchakelt het controleren op updates van sjabloonpakketten uit bij het instantiëren van een sjabloon. Beschikbaar sinds .NET SDK 6.0.100. Bij het instantiëren van de sjabloon vanuit een sjabloonpakket dat is geïnstalleerd met behulp
dotnet new --installvan,dotnet newcontroleert u of er een update voor de sjabloon is. Vanaf .NET 6 worden er geen updatecontroles uitgevoerd voor .NET-standaardsjablonen. Als u .NET-standaardsjablonen wilt bijwerken, installeert u de patchversie van de .NET SDK.-o|--output <OUTPUT_DIRECTORY>Locatie om de gegenereerde uitvoer te plaatsen. De standaardwaarde is de huidige map.
--project <PROJECT_PATH>Het project waaraan de sjabloon is toegevoegd. Dit project wordt gebruikt voor contextevaluatie. Als dit niet is opgegeven, wordt het project in de huidige of bovenliggende mappen gebruikt. Beschikbaar sinds .NET SDK 7.0.100.
-d|--diagnosticsHiermee schakelt u diagnostische uitvoer in. Beschikbaar sinds .NET SDK 7.0.100.
-
-v|--verbosity <LEVEL>Hiermee stelt u het uitgebreidheidsniveau van de opdracht in. Toegestane waarden zijn
q[uiet], , ,m[inimal]enn[ormal]d[etailed]diag[nostic]. Zie LoggerVerbosity voor meer informatie.
Sjabloonopties
Voor elke sjabloon zijn mogelijk extra opties gedefinieerd. Zie .NET-standaardsjablonen voor meer informatie.dotnet new
Voorbeelden
Een C#-consoletoepassingsproject maken:
dotnet new consoleMaak een F#-consoletoepassingsproject in de huidige map:
dotnet new console --language "F#"Maak een .NET Standard 2.0-klassebibliotheekproject in de opgegeven map:
dotnet new classlib --framework "netstandard2.0" -o MyLibraryMaak een nieuw ASP.NET Core C# MVC-project in de huidige map zonder verificatie:
dotnet new mvc -au NoneMaak een nieuw xUnit-project:
dotnet new xunitMaak een global.json in de huidige map waarin de SDK-versie is ingesteld op 8.0.101:
dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeatureHelp weergeven voor de C#-consoletoepassingssjabloon:
dotnet new console -hHelp weergeven voor de F#-consoletoepassingssjabloon:
dotnet new console --language "F#" -h