Udostępnij za pośrednictwem


Zarządzanie szablonami projektów i elementów platformy .NET

Platforma .NET udostępnia system szablonów, który umożliwia użytkownikom instalowanie lub odinstalowywanie pakietów zawierających szablony z pakietu NuGet, pliku pakietu NuGet lub katalogu systemu plików. W tym artykule opisano sposób zarządzania szablonami platformy .NET za pomocą interfejsu wiersza polecenia zestawu .NET SDK.

Aby uzyskać więcej informacji na temat tworzenia szablonów, zobacz Samouczek: tworzenie szablonów.

Instalowanie szablonu

Pakiety szablonów są instalowane za pomocą dotnet new polecenia install SDK. Możesz podać identyfikator pakietu NuGet pakietu szablonu lub folder zawierający pliki szablonu.

Pakiet hostowany nuGet

Pakiety szablonów interfejsu wiersza polecenia platformy .NET są przekazywane do pakietu NuGet w celu szerokiej dystrybucji. Pakiety szablonów można również instalować z prywatnego źródła danych. Zamiast przekazywać pakiet szablonu do źródła danych NuGet, pliki szablonów nupkg mogą być dystrybuowane i instalowane ręcznie, zgodnie z opisem w sekcji Pakiet NuGet lokalny.

Aby uzyskać więcej informacji na temat konfigurowania źródeł danych NuGet, zobacz dotnet nuget add source.

Aby zainstalować pakiet szablonu z domyślnego źródła danych NuGet, użyj dotnet new install {package-id} polecenia :

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

Aby zainstalować pakiet szablonu z domyślnego źródła danych NuGet z określoną wersją, użyj dotnet new install {package-id}::{version} polecenia :

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

Lokalny pakiet NuGet

Po utworzeniu pakietu szablonu jest generowany plik nupkg . Jeśli masz plik nupkg zawierający szablony, możesz go zainstalować za dotnet new install {path-to-package} pomocą polecenia :

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

Folder

Alternatywą dla instalowania szablonu z pliku nupkg jest również zainstalowanie szablonów z folderu bezpośrednio za dotnet new install {folder-path} pomocą polecenia . Określony folder jest traktowany jako identyfikator pakietu szablonu dla dowolnego znalezionego szablonu. Każdy szablon znaleziony w hierarchii określonego folderu jest zainstalowany.

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

Określony {folder-path} w poleceniu staje się identyfikatorem pakietu szablonu dla wszystkich znalezionych szablonów. Zgodnie z opisem w sekcji Listy pakietów szablonów można uzyskać listę pakietów szablonów zainstalowanych za dotnet new uninstall pomocą polecenia . W tym przykładzie identyfikator pakietu szablonu jest wyświetlany jako folder używany do instalacji:

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

Odinstalowywanie pakietu szablonu

Pakiety szablonów są odinstalowywane za pomocą dotnet new polecenia odinstalowywania zestawu SDK. Możesz podać identyfikator pakietu NuGet pakietu szablonu lub folder zawierający pliki szablonu.

Pakiet NuGet

Po zainstalowaniu pakietu szablonu NuGet za pomocą źródła danych NuGet lub pliku nupkg można go odinstalować, odwołując się do identyfikatora pakietu NuGet.

Aby odinstalować pakiet szablonu, użyj dotnet new uninstall {package-id} polecenia :

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

Folder

Gdy szablony są instalowane za pośrednictwem ścieżki folderu, ścieżka folderu staje się identyfikatorem pakietu szablonu.

Aby odinstalować pakiet szablonu, użyj dotnet new uninstall {package-folder-path} polecenia :

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

Wyświetlanie listy pakietów szablonów

Korzystając ze standardowego polecenia dezinstalacji bez identyfikatora pakietu, można wyświetlić listę zainstalowanych pakietów szablonów wraz z poleceniem, które odinstalowuje każdy pakiet szablonu.

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

Instalowanie pakietów szablonów z innych zestawów SDK

Jeśli zainstalowano każdą wersję zestawu SDK sekwencyjnie, na przykład zainstalowano zestaw SDK 6.0, zestaw SDK 7.0 itd., będziesz mieć zainstalowane szablony każdego zestawu SDK. Jeśli jednak zaczniesz od nowszej wersji zestawu SDK, takiej jak 7.0, uwzględniane są tylko szablony dla tej wersji. Szablony dla każdej innej wersji nie są uwzględniane.

Szablony platformy .NET są dostępne w witrynie NuGet i można je zainstalować jak każdy inny szablon. Aby uzyskać więcej informacji, zobacz Instalowanie pakietu hostowanego NuGet.

SDK Identyfikator pakietu NuGet
.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
.NET 8.0 Microsoft.DotNet.Common.ProjectTemplates.8.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
ASP.NET Core 8.0 Microsoft.DotNet.Web.ProjectTemplates.8.0

Na przykład zestaw .NET 8 SDK zawiera szablony dla aplikacji konsolowej przeznaczonej dla platformy .NET 8. Jeśli chcesz kierować program .NET Core 3.1, musisz zainstalować pakiet szablonu 3.1.

  1. Spróbuj utworzyć aplikację przeznaczoną dla platformy .NET Core 3.1.

    dotnet new console --framework netcoreapp3.1
    

    Jeśli zostanie wyświetlony komunikat o błędzie, musisz zainstalować szablony.

  2. Zainstaluj szablony projektów platformy .NET Core 3.1.

    dotnet new install Microsoft.DotNet.Common.ProjectTemplates.3.1
    
  3. Spróbuj utworzyć aplikację po raz drugi.

    dotnet new console --framework netcoreapp3.1
    

    Powinien zostać wyświetlony komunikat wskazujący, że projekt został utworzony.

    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.
    

Zobacz też