dotnet newdotnet new

Dieses Thema gilt für: ✓ .NET Core SDK 1.x .NET Core SDK 2.0This topic applies to: ✓ .NET Core SDK 1.x .NET Core SDK 2.0

nameName

dotnet new: Erstellt ein neues Projekt, eine Konfigurationsdatei oder eine Lösung auf Grundlage der angegebenen Vorlage.dotnet new - Creates a new project, configuration file, or solution based on the specified template.

ÜbersichtSynopsis

dotnet new <TEMPLATE> [--force] [-i|--install] [-lang|--language] [-n|--name] [--nuget-source] [-o|--output]
    [-u|--uninstall] [Template options]
dotnet new <TEMPLATE> [-l|--list] [--type]
dotnet new [-h|--help]

descriptionDescription

Der Befehl dotnet new bietet eine praktische Möglichkeit, ein gültiges .NET Core-Projekt zu initialisieren.The dotnet new command provides a convenient way to initialize a valid .NET Core project.

Der Befehl ruft die Vorlagen-Engine zum Erstellen der Elemente auf dem Datenträger auf, die auf der angegebenen Vorlage und den Optionen basieren.The command calls the template engine to create the artifacts on disk based on the specified template and options.

ArgumenteArguments

TEMPLATE

Die Vorlage, die instanziiert werden soll, wenn der Befehl aufgerufen wird.The template to instantiate when the command is invoked. Jede Vorlage verfügt möglicherweise über bestimmte Optionen, die Sie übergeben können.Each template might have specific options you can pass. Weitere Informationen finden Sie unter Vorlagenoptionen.For more information, see Template options.

Der Befehl enthält eine Standardliste mit Vorlagen.The command contains a default list of templates. Verwenden Sie dotnet new -l, um eine Liste der verfügbaren Vorlagen abzurufen.Use dotnet new -l to obtain a list of the available templates. In der folgenden Tabelle werden die Vorlagen gezeigt, die bereits mit dem .NET Core SDK 2.1.300 vorinstalliert sind.The following table shows the templates that come pre-installed with the .NET Core SDK 2.1.300. Die Standardsprache für die Vorlage wird in den Klammern angezeigt.The default language for the template is shown inside the brackets.

VorlagenbeschreibungTemplate description VorlagennameTemplate name SprachenLanguages
KonsolenanwendungConsole application console [C#], F#, VB[C#], F#, VB
KlassenbibliothekClass library classlib [C#], F#, VB[C#], F#, VB
UnittestprojektUnit test project mstest [C#], F#, VB[C#], F#, VB
xUnit-TestprojektxUnit test project xunit [C#], F#, VB[C#], F#, VB
Seite „Razor“Razor page page [C#][C#]
MVC ViewImportsMVC ViewImports viewimports [C#][C#]
MVC ViewStartMVC ViewStart viewstart [C#][C#]
ASP.NET Core leerASP.NET Core empty web [C#], F#[C#], F#
ASP.NET Core-Web-App (Model-View-Controller)ASP.NET Core Web App (Model-View-Controller) mvc [C#], F#[C#], F#
ASP.NET Core-Web-AppASP.NET Core Web App razor [C#][C#]
ASP.NET Core mit AngularASP.NET Core with Angular angular [C#][C#]
ASP.NET Core mit React.jsASP.NET Core with React.js react [C#][C#]
ASP.NET Core mit React.js und ReduxASP.NET Core with React.js and Redux reactredux [C#][C#]
ASP.NET Core-Web-APIASP.NET Core Web API webapi [C#], F#[C#], F#
Razor-KlassenbibliothekRazor class library razorclasslib [C#][C#]
global.json-Dateiglobal.json file globaljson
NuGet-KonfigurationNuGet config nugetconfig
Web-KonfigurationWeb config webconfig
ProjektmappendateiSolution file sln

OptionenOptions

--force

Erzwingt das Generieren von Inhalt, auch wenn dadurch vorhandene Dateien geändert werden.Forces content to be generated even if it would change existing files. Dies ist erforderlich, wenn das Ausgabeverzeichnis bereits ein Projekt enthält.This is required when the output directory already contains a project.

-h|--help

Druckt Hilfe für den Befehl.Prints out help for the command. Kann für den dotnet new-Befehl selbst oder für jede Vorlage wie z.B. dotnet new mvc --help aufgerufen werden.It can be invoked for the dotnet new command itself or for any template, such as dotnet new mvc --help.

-i|--install <PATH|NUGET_ID>

Installiert ein Quell- oder Vorlagenpack aus den bereitgestellten PATH oder NUGET_ID.Installs a source or template pack from the PATH or NUGET_ID provided. Wenn Sie eine Vorabversion eines Vorlagenpakets installieren möchten, müssen Sie die Version im Format <package-name>::<package-version> angeben.If you want to install a prerelease version of a template package, you need to specify the version in the format of <package-name>::<package-version>. Standardmäßig übergibt dotnet new das Symbol * für die Version, die das letzte stabile Paket darstellt.By default, dotnet new passes * for the version, which represents the last stable package version. Ein Beispiel finden Sie im Abschnitt Beispiele.See an example at the Examples section.

Informationen zum Erstellen von Benutzerdefinierten Vorlagen finden Sie unter Custom templates for dotnet new (Benutzerdefinierte Vorlagen für dotnet new).For information on creating custom templates, see Custom templates for dotnet new.

-l|--list

Listet Vorlagen auf, die den angegebenen Namen enthalten.Lists templates containing the specified name. Beim Aufrufen für den dotnet new-Befehl werden die möglichen Vorlagen aufgelistet, die für das angegebene Verzeichnis verfügbar sind.If invoked for the dotnet new command, it lists the possible templates available for the given directory. Wenn das Verzeichnis bereits ein Projekt enthält, listet es z.B. nicht alle Projektvorlagen auf.For example if the directory already contains a project, it doesn't list all project templates.

-lang|--language {C#|F#|VB}

Gibt die Sprache der zu erstellenden Vorlage an.The language of the template to create. Die akzeptierte Sprache variiert je nach Vorlage (siehe Standardwerte im Abschnitt Argumente).The language accepted varies by the template (see defaults in the arguments section). Für einige Vorlagen nicht gültig.Not valid for some templates.

Hinweis

Einige Shells interpretieren # als Sonderzeichen.Some shells interpret # as a special character. In diesen Fällen müssen Sie den Sprachparameterwert einschließen, z.B. dotnet new console -lang "F#".In those cases, you need to enclose the language parameter value, such as dotnet new console -lang "F#".

-n|--name <OUTPUT_NAME>

Der Name für die erstellte Ausgabe.The name for the created output. Wird kein Name angegeben , wird der Name des aktuellen Verzeichnisses verwendet.If no name is specified, the name of the current directory is used.

--nuget-source

Gibt eine NuGet-Quelle an, die bei der Installation verwendet werden soll.Specifies a NuGet source to use during install.

-o|--output <OUTPUT_DIRECTORY>

Speicherort für die generierte Ausgabe.Location to place the generated output. Der Standardwert ist das aktuelle Verzeichnis.The default is the current directory.

--type

Filtert Vorlagen auf Grundlage verfügbarer Typen.Filters templates based on available types. Vordefinierte Werte sind „project“, „item“ oder „other“.Predefined values are "project", "item" or "other".

-u|--uninstall <PATH|NUGET_ID>

Deinstalliert ein Quell- oder Vorlagenpack aus den bereitgestellten PATH oderNUGET_ID.Uninstalls a source or template pack at the PATH or NUGET_ID provided.

Hinweis

Um eine Vorlage durch einen PATH zu deinstallieren, müssen Sie den Pfad vollständig qualifizieren.To uninstall a template using a PATH, you need to fully qualify the path. Beispielsweise funktioniert zwar C:/Users/<BENUTZER>/Documents/Templates/GarciaSoftware.ConsoleTemplate.CSharp, jedoch nicht ./GarciaSoftware.ConsoleTemplate.CSharp aus dem übergeordneten Ordner.For example, C:/Users/<USER>/Documents/Templates/GarciaSoftware.ConsoleTemplate.CSharp will work, but ./GarciaSoftware.ConsoleTemplate.CSharp from the containing folder will not. Schließen Sie darüber hinaus keinen letzten abschließenden Schrägstrich in den Vorlagenpfad Ihres Verzeichnisses ein.Additionally, do not include a final terminating directory slash on your template path.

VorlagenoptionenTemplate options

Für jede Projektvorlage kann es zusätzliche Optionen geben.Each project template may have additional options available. Die Core-Vorlagen haben die folgenden zusätzlichen Optionen:The core templates have the following additional options:

console, angular, react, reactredux, razorclasslibconsole, angular, react, reactredux, razorclasslib

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

classlibclasslib

-f|--framework <FRAMEWORK>: Gibt an, welches Framework verwendet werden soll.-f|--framework <FRAMEWORK> - Specifies the framework to target. Werte: netcoreapp2.0, um eine .NET Core-Klassenbibliothek zu erstellen, oder netstandard2.0, um eine .NET Standard-Klassenbibliothek zu erstellen.Values: netcoreapp2.0 to create a .NET Core Class Library or netstandard2.0 to create a .NET Standard Class Library. Der Standardwert ist netstandard2.0.The default value is netstandard2.0.

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

mstest, xunitmstest, xunit

-p|--enable-pack: ermöglicht das Verpacken des Projekts mit dotnet pack.-p|--enable-pack - Enables packaging for the project using dotnet pack.

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

globaljsonglobaljson

--sdk-version <VERSION_NUMBER>: gibt die Version des .NET Core SDK an, das in der global.json-Datei werden soll.--sdk-version <VERSION_NUMBER> - Specifies the version of the .NET Core SDK to use in the global.json file.

webweb

--use-launch-settings: enthält launchSettings.json in der generierten Vorlagenausgabe.--use-launch-settings - Includes launchSettings.json in the generated template output.

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

webapiwebapi

-au|--auth <AUTHENTICATION_TYPE>: Der zu verwendende Authentifizierungstyp.-au|--auth <AUTHENTICATION_TYPE> - The type of authentication to use. Mögliche Werte sind:The possible values are:

  • None: keine Authentifizierung (Standard)None - No authentication (Default).
  • IndividualB2C: einzelne Authentifizierung mit Azur AD B2CIndividualB2C - Individual authentication with Azure AD B2C.
  • SingleOrg: Organisationauthentifizierung für einzelne MandantenSingleOrg - Organizational authentication for a single tenant.
  • Windows: Windows-AuthentifizierungWindows - Windows authentication.

--aad-b2c-instance <INSTANCE>: Die Azure AD B2C-Instanz, mit der eine Verbindung hergestellt werden soll.--aad-b2c-instance <INSTANCE> - The Azure Active Directory B2C instance to connect to. Mit der IndividualB2C-Authentifizierung verwendenUse with IndividualB2C authentication. Der Standardwert ist https://login.microsoftonline.com/tfp/.The default value is https://login.microsoftonline.com/tfp/.

-ssp|--susi-policy-id <ID>: die ID der Anmelde- und Registrierungsrichtlinien für dieses Projekt.-ssp|--susi-policy-id <ID> - The sign-in and sign-up policy ID for this project. Mit der IndividualB2C-Authentifizierung verwendenUse with IndividualB2C authentication.

--aad-instance <INSTANCE>: Die Azure AD-Instanz, mit der eine Verbindung hergestellt werden soll.--aad-instance <INSTANCE> - The Azure Active Directory instance to connect to. Mit der SingleOrg-Authentifizierung verwendenUse with SingleOrg authentication. Der Standardwert ist https://login.microsoftonline.com/.The default value is https://login.microsoftonline.com/.

--client-id <ID>: Die Client-ID für dieses Projekt.--client-id <ID> - The Client ID for this project. Mit der IndividualB2C- oder SingleOrg-Authentifizierung verwendenUse with IndividualB2C or SingleOrg authentication. Der Standardwert ist 11111111-1111-1111-11111111111111111.The default value is 11111111-1111-1111-11111111111111111.

--domain <DOMAIN>: Die Domäne für den Verzeichnismandanten--domain <DOMAIN> - The domain for the directory tenant. Mit der SingleOrg- oder IndividualB2C-Authentifizierung verwendenUse with SingleOrg or IndividualB2C authentication. Der Standardwert ist qualified.domain.name.The default value is qualified.domain.name.

--tenant-id <ID>: Die Mandanten-ID der Verzeichnis, mit dem eine Verbindung hergestellt werden soll--tenant-id <ID> - The TenantId ID of the directory to connect to. Mit der SingleOrg-Authentifizierung verwendenUse with SingleOrg authentication. Der Standardwert ist 22222222-2222-2222-2222-222222222222.The default value is 22222222-2222-2222-2222-222222222222.

-r|--org-read-access: erteilt der Anwendung Lesezugriff auf das Verzeichnis.-r|--org-read-access - Allows this application read-access to the directory. Gilt nur für die SingleOrg- oder MultiOrg-AuthentifizierungOnly applies to SingleOrg or MultiOrg authentication.

--use-launch-settings: enthält launchSettings.json in der generierten Vorlagenausgabe.--use-launch-settings - Includes launchSettings.json in the generated template output.

-uld|--use-local-db: gibt an, dass LocalDB statt SQLite verwendet werden soll.-uld|--use-local-db - Specifies LocalDB should be used instead of SQLite. Gilt nur für die Individual- oder IndividualB2C-Authentifizierung.Only applies to Individual or IndividualB2C authentication.

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

mvc, razormvc, razor

-au|--auth <AUTHENTICATION_TYPE>: Der zu verwendende Authentifizierungstyp.-au|--auth <AUTHENTICATION_TYPE> - The type of authentication to use. Mögliche Werte sind:The possible values are:

  • None: keine Authentifizierung (Standard)None - No authentication (Default).
  • Individual: einzelne AuthentifizierungIndividual - Individual authentication.
  • IndividualB2C: einzelne Authentifizierung mit Azur AD B2CIndividualB2C - Individual authentication with Azure AD B2C.
  • SingleOrg: Organisationauthentifizierung für einzelne MandantenSingleOrg - Organizational authentication for a single tenant.
  • MultiOrg: Organisationauthentifizierung für mehrere MandantenMultiOrg - Organizational authentication for multiple tenants.
  • Windows: Windows-AuthentifizierungWindows - Windows authentication.

--aad-b2c-instance <INSTANCE>: Die Azure AD B2C-Instanz, mit der eine Verbindung hergestellt werden soll.--aad-b2c-instance <INSTANCE> - The Azure Active Directory B2C instance to connect to. Mit der IndividualB2C-Authentifizierung verwendenUse with IndividualB2C authentication. Der Standardwert ist https://login.microsoftonline.com/tfp/.The default value is https://login.microsoftonline.com/tfp/.

-ssp|--susi-policy-id <ID>: die ID der Anmelde- und Registrierungsrichtlinien für dieses Projekt.-ssp|--susi-policy-id <ID> - The sign-in and sign-up policy ID for this project. Mit der IndividualB2C-Authentifizierung verwendenUse with IndividualB2C authentication.

-rp|--reset-password-policy-id <ID>: Die Richtlinien-ID zum Zurücksetzen des Kennworts für dieses Projekt-rp|--reset-password-policy-id <ID> - The reset password policy ID for this project. Mit der IndividualB2C-Authentifizierung verwenden.Use with IndividualB2C authentication.

-ep|--edit-profile-policy-id <ID>: Die Richtlinien-ID zum Bearbeiten des Profils für dieses Projekt-ep|--edit-profile-policy-id <ID> - The edit profile policy ID for this project. Mit der IndividualB2C-Authentifizierung verwendenUse with IndividualB2C authentication.

--aad-instance <INSTANCE>: Die Azure AD-Instanz, mit der eine Verbindung hergestellt werden soll.--aad-instance <INSTANCE> - The Azure Active Directory instance to connect to. Mit der SingleOrg- oder MultiOrg-Authentifizierung verwendenUse with SingleOrg or MultiOrg authentication. Der Standardwert ist https://login.microsoftonline.com/.The default value is https://login.microsoftonline.com/.

--client-id <ID>: Die Client-ID für dieses Projekt.--client-id <ID> - The Client ID for this project. Mit der IndividualB2C-, SingleOrg-oder MultiOrg-Authentifizierung verwendenUse with IndividualB2C, SingleOrg, or MultiOrg authentication. Der Standardwert ist 11111111-1111-1111-11111111111111111.The default value is 11111111-1111-1111-11111111111111111.

--domain <DOMAIN>: Die Domäne für den Verzeichnismandanten--domain <DOMAIN> - The domain for the directory tenant. Mit der SingleOrg- oder IndividualB2C-Authentifizierung verwendenUse with SingleOrg or IndividualB2C authentication. Der Standardwert ist qualified.domain.name.The default value is qualified.domain.name.

--tenant-id <ID>: Die Mandanten-ID der Verzeichnis, mit dem eine Verbindung hergestellt werden soll--tenant-id <ID> - The TenantId ID of the directory to connect to. Mit der SingleOrg-Authentifizierung verwendenUse with SingleOrg authentication. Der Standardwert ist 22222222-2222-2222-2222-222222222222.The default value is 22222222-2222-2222-2222-222222222222.

--callback-path <PATH>: der Anforderungspfad innerhalb des Basispfads des Umleitungs-URIs der Anwendung.--callback-path <PATH> - The request path within the application's base path of the redirect URI. Mit der SingleOrg- oder IndividualB2C-Authentifizierung verwendenUse with SingleOrg or IndividualB2C authentication. Der Standardwert ist /signin-oidc.The default value is /signin-oidc.

-r|--org-read-access: erteilt der Anwendung Lesezugriff auf das Verzeichnis.-r|--org-read-access - Allows this application read-access to the directory. Gilt nur für die SingleOrg- oder MultiOrg-AuthentifizierungOnly applies to SingleOrg or MultiOrg authentication.

--use-launch-settings: enthält launchSettings.json in der generierten Vorlagenausgabe.--use-launch-settings - Includes launchSettings.json in the generated template output.

--use-browserlink: enthält BrowserLink im Projekt--use-browserlink - Includes BrowserLink in the project.

-uld|--use-local-db: gibt an, dass LocalDB statt SQLite verwendet werden soll.-uld|--use-local-db - Specifies LocalDB should be used instead of SQLite. Gilt nur für die Individual- oder IndividualB2C-Authentifizierung.Only applies to Individual or IndividualB2C authentication.

--no-restore: führt keine implizite Wiederherstellung während der Projekterstellung durch.--no-restore - Doesn't execute an implicit restore during project creation.

pagepage

-na|--namespace <NAMESPACE_NAME>: gibt den Namespace für den generierten Code an.-na|--namespace <NAMESPACE_NAME>- Namespace for the generated code. Der Standardwert ist MyApp.Namespace.The default value is MyApp.Namespace.

-np|--no-pagemodel: erstellt die Seite ohne ein Seitenmodell-np|--no-pagemodel - Creates the page without a PageModel.

viewimportsviewimports

-na|--namespace <NAMESPACE_NAME>: gibt den Namespace für den generierten Code an.-na|--namespace <NAMESPACE_NAME>- Namespace for the generated code. Der Standardwert ist MyApp.Namespace.The default value is MyApp.Namespace.

BeispieleExamples

Erstellen Sie ein F#-Konsolenanwendungsprojekt im aktuellen Verzeichnis:Create an F# console application project in the current directory:

dotnet new console -lang F#

Erstellen Sie ein .NET Standard-Klassenbibliotheksprojekt im angegebenen Verzeichnis (nur im .NET Core SDK 2.0 oder höher verfügbar):Create a .NET Standard class library project in the specified directory (available only with .NET Core SDK 2.0 or later versions):

dotnet new classlib -lang VB -o MyLibrary

Erstellen Sie ein neues ASP.NET Core C# MVC-Anwendungsprojekt im aktuellen Verzeichnis ohne Authentifizierung:Create a new ASP.NET Core C# MVC application project in the current directory with no authentication:

dotnet new mvc -au None

Erstellen Sie eine neue xUnit-Anwendung:Create a new xUnit application:

dotnet new xunit

Liste Sie alle für MVC verfügbaren Vorlagen auf:List all templates available for MVC:

dotnet new mvc -l

Installieren Sie Version 2.0 der Einzelseitenanwendungsvorlagen für ASP.NET Core (Befehlsoption, die ausschließlich für .NET Core SDK 1.1 und höher verfügbar ist):Install version 2.0 of the Single Page Application templates for ASP.NET Core (command option available for .NET Core SDK 1.1 and later versions only):

dotnet new -i Microsoft.DotNet.Web.Spa.ProjectTemplates::2.0.0

Erstellen Sie eine global.json im aktuellen Verzeichnis, und legen Sie die SDK Version 2.0.0 fest (nur im .NET Core SDK 2.0 oder höher verfügbar):Create a global.json in the current directory setting the SDK version to 2.0.0 (available only with .NET Core SDK 2.0 or later versions):

dotnet new globaljson --sdk-version 2.0.0

Siehe auchSee also

Custom templates for dotnet new (Benutzerdefinierte Vorlagen für dotnet new)Custom templates for dotnet new
Erstellen eines benutzerdefinierten Vorlagen-AssistentenCreate a custom template for dotnet new
dotnet/dotnet-template-samples-GitHub-Repositorydotnet/dotnet-template-samples GitHub repo
Verfügbare Vorlagen für dotnet newAvailable templates for dotnet new