Lezen in het Engels

Delen via


.NET-project- en itemsjablonen beheren

Een besturingssysteem kiezen

.NET biedt een sjabloonsysteem waarmee gebruikers pakketten met sjablonen kunnen installeren of verwijderen uit NuGet, een NuGet-pakketbestand of een bestandssysteemmap. In dit artikel wordt beschreven hoe u .NET-sjablonen beheert via de .NET SDK CLI.

Zie Zelfstudie: Sjablonen maken voor meer informatie over het maken van sjablonen.

Sjabloon installeren

Sjabloonpakketten worden geïnstalleerd via de dotnet new installatie-SDK-opdracht . U kunt de NuGet-pakket-id van een sjabloonpakket opgeven of een map die de sjabloonbestanden bevat.

NuGet-gehost pakket

.NET CLI-sjabloonpakketten worden geüpload naar NuGet voor brede distributie. Sjabloonpakketten kunnen ook worden geïnstalleerd vanuit een privéfeed. In plaats van een sjabloonpakket te uploaden naar een NuGet-feed, kunnen nupkg-sjabloonbestanden worden gedistribueerd en handmatig geïnstalleerd, zoals beschreven in de sectie Lokaal NuGet-pakket .

Zie voor meer informatie over het configureren van NuGet-feeds dotnet nuget add source.

Als u een sjabloonpakket wilt installeren vanuit de standaard NuGet-feed, gebruikt u de dotnet new install {package-id} opdracht:

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

Als u een sjabloonpakket wilt installeren vanuit de standaard NuGet-feed met een specifieke versie, gebruikt u de dotnet new install {package-id}::{version} opdracht:

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

Lokaal NuGet-pakket

Wanneer een sjabloonpakket wordt gemaakt, wordt er een nupkg-bestand gegenereerd. Als u een nupkg-bestand met sjablonen hebt, kunt u het installeren met de dotnet new install {path-to-package} opdracht:

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

Map

Als alternatief voor het installeren van een sjabloon vanuit een nupkg-bestand , kunt u sjablonen ook rechtstreeks vanuit een map installeren met de dotnet new install {folder-path} opdracht. De opgegeven map wordt behandeld als de sjabloonpakket-id voor alle gevonden sjablonen. Een sjabloon die in de opgegeven maphiërarchie is gevonden, is geïnstalleerd.

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

De {folder-path} opgegeven opdracht wordt de sjabloonpakket-id voor alle gevonden sjablonen. Zoals opgegeven in de sectie Lijstsjabloonpakketten , kunt u een lijst met sjabloonpakketten ophalen die zijn geïnstalleerd met de dotnet new uninstall opdracht. In dit voorbeeld wordt de sjabloonpakket-id weergegeven als de map die wordt gebruikt voor de installatie:

Console
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
Console
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

Sjabloonpakket verwijderen

Sjabloonpakketten worden verwijderd via de dotnet new opdracht SDK verwijderen . U kunt de NuGet-pakket-id van een sjabloonpakket opgeven of een map die de sjabloonbestanden bevat.

NuGet-pakket

Nadat een NuGet-sjabloonpakket is geïnstalleerd, kunt u dit verwijderen vanuit een NuGet-feed of een nupkg-bestand door te verwijzen naar de NuGet-pakket-id.

Als u een sjabloonpakket wilt verwijderen, gebruikt u de dotnet new uninstall {package-id} opdracht:

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

Map

Wanneer sjablonen worden geïnstalleerd via een mappad, wordt het mappad de sjabloonpakket-id.

Als u een sjabloonpakket wilt verwijderen, gebruikt u de dotnet new uninstall {package-folder-path} opdracht:

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

Sjabloonpakketten vermelden

Met de standaardopdracht verwijderen zonder pakket-id ziet u een lijst met geïnstalleerde sjabloonpakketten, samen met de opdracht waarmee elk sjabloonpakket wordt verwijderd.

Console
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

Sjabloonpakketten installeren vanuit andere SDK's

Als u elke versie van de SDK sequentieel hebt geïnstalleerd, bijvoorbeeld als u SDK 6.0 hebt geïnstalleerd, hebt u SDK 7.0 enzovoort geïnstalleerd. Als u echter begint met een latere SDK-versie, zoals 7.0, worden alleen de sjablonen voor deze versie opgenomen. Sjablonen voor andere versies zijn niet opgenomen.

De .NET-sjablonen zijn beschikbaar op NuGet en u kunt ze installeren zoals elke andere sjabloon. Zie NuGet-gehost pakket installeren voor meer informatie.

De .NET 9 SDK bevat bijvoorbeeld sjablonen voor een console-app die is gericht op .NET 9. Als u .NET Core 3.1 wilt targeten, moet u het sjabloonpakket 3.1 installeren.

  1. Probeer een app te maken die is gericht op .NET Core 3.1.

    .NET CLI
    dotnet new console --framework netcoreapp3.1
    

    Als u een foutbericht ziet, moet u de sjablonen installeren.

  2. Installeer de .NET Core 3.1-projectsjablonen.

    .NET CLI
    dotnet new install Microsoft.DotNet.Common.ProjectTemplates.3.1
    
  3. Probeer de app een tweede keer te maken.

    .NET CLI
    dotnet new console --framework netcoreapp3.1
    

    En u ziet nu een bericht dat aangeeft dat het project is gemaakt.

    Output
    The template "Console Application" was created successfully.
    
    Processing post-creation actions...
    Running 'dotnet restore' on path-to-project-file.csproj...
      Determining projects to restore...
      Restore completed in 1.05 sec for path-to-project-file.csproj.
    
    Restore succeeded.
    

Zie ook