Verwalten von .NET-Projekt- und -Elementvorlagen

.NET bietet ein Vorlagensystem, das Benutzern die Installation oder Deinstallation von Paketen mit enthaltenen Vorlagen über NuGet, eine NuGet-Paketdatei oder ein Dateisystemverzeichnis ermöglicht. In diesem Artikel wird beschrieben, wie Sie .NET-Vorlagen mit der CLI des .NET SDK verwalten.

Weitere Informationen zum Erstellen von Vorlagen finden Sie unter Tutorial: Erstellen von Vorlagen.

Installieren von Vorlagen

Vorlagenpakete werden mit dem SDK-Befehl dotnet new install installiert. Sie können entweder den NuGet-Paketbezeichner eines Vorlagenpakets oder einen Ordner mit den Vorlagendateien angeben.

Gehostetes NuGet-Paket

.NET CLI-Vorlagenpakete werden zur weiteren Verteilung auf NuGet hochgeladen. Vorlagenpakete können auch über einen privaten Feed installiert werden. Anstatt ein Vorlagenpaket in einen NuGet-Feed hochzuladen, können NUPKG-Vorlagendateien verteilt und manuell installiert werden. Weitere Informationen hierzu finden Sie im Abschnitt Lokales NuGet-Paket.

Weitere Informationen zum Konfigurieren von NuGet-Feeds finden Sie unter dotnet nuget add source.

Verwenden Sie zum Installieren eines Vorlagenpakets über den NuGet-Standardfeed den Befehl dotnet new install {package-id}:

dotnet new install Microsoft.DotNet.Web.Spa.ProjectTemplates

Verwenden Sie zum Installieren eines Vorlagenpakets mit einer bestimmten Version über den NuGet-Standardfeed den Befehl dotnet new install {package-id}::{version}:

dotnet new install Microsoft.DotNet.Web.Spa.ProjectTemplates::2.2.6

Lokales NuGet-Paket

Beim Erstellen eines Vorlagenpaket wird eine NUPKG-Datei generiert. Wenn Sie eine NUPKG-Datei mit Vorlagen besitzen, können Sie diese mit dem Befehl dotnet new install {path-to-package} installieren:

dotnet new install c:\code\nuget-packages\Some.Templates.1.0.0.nupkg
dotnet new install ~/code/nuget-packages/Some.Templates.1.0.0.nupkg

Ordner

Als Alternative zum Installieren der Vorlage über eine NUPKG-Datei können Sie Vorlagen auch direkt mit dem dotnet new install {folder-path}-Befehl aus einem Ordner installieren. Der angegebene Ordner wird als Vorlagenpaketbezeichner für jede gefundene Vorlage behandelt. Alle Vorlagen, die in der Hierarchie des angegebenen Ordners gefunden werden, werden installiert.

dotnet new install c:\code\nuget-packages\some-folder\
dotnet new install ~/code/nuget-packages/some-folder/

Der Parameter {folder-path} im Befehl wird zum Vorlagenpaketbezeichner für alle gefundenen Vorlagen. Wie im Abschnitt Auflisten von Vorlagenpaketen erläutert, können Sie mit dem Befehl dotnet new uninstall eine Liste der installierten Vorlagenpakete aufrufen. In diesem Beispiel wird der Vorlagenpaketbezeichner als der für die Installation verwendete Ordner angegeben:

dotnet new uninstall
Currently installed items:

... cut to save space ...

  c:\code\nuget-packages\some-folder
    Templates:
      A Template Console Class (templateconsole) C#
      Project for some technology (contosoproject) C#
    Uninstall Command:
      dotnet new uninstall c:\code\nuget-packages\some-folder
dotnet new uninstall
Currently installed items:

... cut to save space ...

  /home/username/code/templates
    Templates:
      A Template Console Class (templateconsole) C#
      Project for some technology (contosoproject) C#
    Uninstall Command:
      dotnet new uninstall /home/username/code/templates

Deinstallieren des Vorlagenpakets

Vorlagenpakete werden mit dem SDK-Befehl dotnet new uninstall deinstalliert. Sie können entweder den NuGet-Paketbezeichner eines Vorlagenpakets oder einen Ordner mit den Vorlagendateien angeben.

NuGet-Paket

Nachdem ein NuGet-Vorlagenpaket entweder über einen NuGet-Feed oder eine NUPKG-Datei installiert wurde, können Sie es deinstallieren, indem Sie auf den NuGet-Paketbezeichner verweisen.

Verwenden Sie zum Deinstallieren eines Vorlagenpakets den Befehl dotnet new uninstall {package-id}:

dotnet new uninstall Microsoft.DotNet.Web.Spa.ProjectTemplates

Ordner

Wenn Vorlagen über einen Ordnerpfad installiert werden, wird der Ordnerpfad zum Vorlagenpaketbezeichner.

Verwenden Sie zum Deinstallieren eines Vorlagenpakets den Befehl dotnet new uninstall {package-folder-path}:

dotnet new uninstall c:\code\nuget-packages\some-folder
dotnet new uninstall /home/username/code/templates

Auflisten von Vorlagenpaketen

Wenn Sie den Standardbefehl zum Deinstallieren ohne Paketbezeichner verwenden, werden eine Liste der installierten Vorlagenpakete und der Befehl angezeigt, mit dem Sie die jeweiligen Vorlagenpakete deinstallieren können.

dotnet new uninstall
Currently installed items:

... cut to save space ...

  c:\code\nuget-packages\some-folder
    Templates:
      A Template Console Class (templateconsole) C#
      Project for some technology (contosoproject) C#
    Uninstall Command:
      dotnet new uninstall c:\code\nuget-packages\some-folder

Installieren von Vorlagenpaketen aus anderen SDKs

Wenn Sie die einzelnen Versionen des SDK sequenziell installiert haben, z. B. erst SDK 6.0, dann SDK 7.0 usw., sind auch die Vorlagen aller SDKs installiert. Wenn Sie jedoch mit einer späteren SDK-Version wie 7.0 beginnen, sind nur die Vorlagen dieser Version enthalten. Vorlagen für ein andere Releases sind nicht enthalten.

Die .NET-Vorlagen sind auf NuGet verfügbar und können wie jede andere Vorlage installiert werden. Weitere Informationen finden Sie unter Installieren von auf NuGet gehosteten Paketen.

SDK NuGet-Paketbezeichner
.NET Core 2.1 Microsoft.DotNet.Common.ProjectTemplates.2.1
.NET Core 2.2 Microsoft.DotNet.Common.ProjectTemplates.2.2
.NET Core 3.0 Microsoft.DotNet.Common.ProjectTemplates.3.0
.NET Core 3.1 Microsoft.DotNet.Common.ProjectTemplates.3.1
.NET 5.0 Microsoft.DotNet.Common.ProjectTemplates.5.0
.NET 6.0 Microsoft.DotNet.Common.ProjectTemplates.6.0
.NET 7.0 Microsoft.DotNet.Common.ProjectTemplates.7.0
ASP.NET Core 2.1 Microsoft.DotNet.Web.ProjectTemplates.2.1
ASP.NET Core 2.2 Microsoft.DotNet.Web.ProjectTemplates.2.2
ASP.NET Core 3.0 Microsoft.DotNet.Web.ProjectTemplates.3.0
ASP.NET Core 3.1 Microsoft.DotNet.Web.ProjectTemplates.3.1
ASP.NET Core 5.0 Microsoft.DotNet.Web.ProjectTemplates.5.0
ASP.NET Core 6.0 Microsoft.DotNet.Web.ProjectTemplates.6.0
ASP.NET Core 7.0 Microsoft.DotNet.Web.ProjectTemplates.7.0

Das .NET SDK enthält beispielsweise Vorlagen für eine Konsolen-App für .NET 7. Wenn Sie die App für .NET Core 3.1 erstellen möchten, müssen Sie das Vorlagenpaket für Version 3.1 installieren.

  1. Versuchen Sie, eine App für .NET Core 3.1 zu erstellen.

    dotnet new console --framework netcoreapp3.1
    

    Wenn folgende Fehlermeldung angezeigt wird, müssen Sie die Vorlagen installieren.

  2. Installieren Sie die .NET Core 3.1-Projektvorlagen.

    dotnet new install Microsoft.DotNet.Common.ProjectTemplates.3.1
    
  3. Erstellen Sie die App ein zweites Mal.

    dotnet new console --framework netcoreapp3.1
    

    Jetzt sollte eine Meldung angezeigt werden, die besagt, dass das Projekt erstellt wurde.

The template "Console Application" was created successfully. (Die Vorlage „Konsolenanwendung“ wurde erfolgreich erstellt.)

Processing post-creation actions... (Aktionen nach der Erstellung werden verarbeitet...) Running 'dotnet restore' on path-to-project-file.csproj... (dotnet restore wird für „Pfad_der_Projektdatei.csproj“ ausgeführt...) Determining projects to restore... (Wiederherzustellende Projekte werden ermittelt...) Restore completed in 1.05 sec for path-to-project-file.csproj. (Die Wiederherstellung von „Pfad_zur_Projektdatei.csproj“ wurde in 1,05 Sekunden abgeschlossen.)

Restore succeeded. (Wiederherstellung erfolgreich.)

Siehe auch