Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
.NET предоставляет систему шаблонов, которая позволяет пользователям устанавливать или удалять пакеты, содержащие шаблоны из NuGet, файла пакета NuGet или каталога файловой системы. В этой статье описывается, как управлять шаблонами .NET с помощью интерфейса командной строки SDK для .NET.
Дополнительные сведения о создании шаблонов см. в руководстве по созданию шаблонов.
Установка шаблонов
Пакеты шаблонов устанавливаются с помощью dotnet new команды пакета SDK для установки . Можно указать идентификатор пакета NuGet для пакета шаблона или папку, содержащую файлы шаблона.
Пакет NuGet, размещённый на сервере
Пакеты шаблонов .NET CLI отправляются в NuGet для широкого распространения. Пакеты шаблонов также можно установить из частного фида. Вместо того чтобы загружать пакет шаблона в канал NuGet, файлы шаблонов nupkg можно распространять и устанавливать вручную, как описано в разделе "Локальный пакет NuGet".
Для получения дополнительных сведений о настройке фидов NuGet см. раздел dotnet nuget add source.
Чтобы установить пакет шаблона из канала NuGet по умолчанию, используйте команду dotnet new install {package-id}.
dotnet new install Microsoft.DotNet.Web.Spa.ProjectTemplates
Чтобы установить пакет шаблона из веб-канала NuGet по умолчанию с определенной версией, используйте dotnet new install {package-id}@{version} команду:
dotnet new install Microsoft.DotNet.Web.Spa.ProjectTemplates@2.2.6
Замечание
Разделитель :: двоеточия устарел в пользу символа @ в SDK для .NET 9.0.200.
Локальный пакет NuGet
При создании пакета шаблона создается файл nupkg . Если у вас есть файл nupkg, содержащий шаблоны, его можно установить с помощью команды dotnet new install {path-to-package}:
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
Папка
В качестве альтернативы установке шаблона из файла nupkg можно также установить шаблоны из папки напрямую с помощью команды dotnet new install {folder-path}. Указанная папка рассматривается как идентификатор пакета шаблона для любого найденного шаблона. Любой шаблон, найденный в иерархии указанной папки, устанавливается.
dotnet new install c:\code\nuget-packages\some-folder\
dotnet new install ~/code/nuget-packages/some-folder/
Указанный {folder-path} в команде идентификатор пакета шаблона становится идентификатором пакета шаблона для всех найденных шаблонов. Как указано в разделе "Шаблоны списка пакетов", вы можете получить список установленных пакетов с помощью команды dotnet new uninstall. В этом примере идентификатор пакета шаблона отображается как папка, используемая для установки:
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
Удаление пакета шаблона
Пакеты шаблонов удаляются с помощью команды SDK dotnet new uninstall. Можно указать идентификатор пакета NuGet для пакета шаблона или папку, содержащую файлы шаблона.
Пакет NuGet
После установки пакета шаблона NuGet из канала NuGet или nupkg-файла его можно удалить, ссылаясь на идентификатор пакета NuGet.
Чтобы удалить пакет шаблона, используйте dotnet new uninstall {package-id} команду:
dotnet new uninstall Microsoft.DotNet.Web.Spa.ProjectTemplates
Папка
Когда шаблоны устанавливаются через путь к папке, путь к папке становится идентификатором пакета шаблона.
Чтобы удалить пакет шаблона, используйте dotnet new uninstall {package-folder-path} команду:
dotnet new uninstall c:\code\nuget-packages\some-folder
dotnet new uninstall /home/username/code/templates
Список пакетов шаблонов
С помощью стандартной команды удаления без идентификатора пакета можно просмотреть список установленных пакетов шаблонов вместе с командой, которая удаляет каждый пакет шаблона.
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
Установка пакетов шаблонов из других пакетов SDK
Если вы установили каждую версию пакета SDK последовательно, например вы установили пакет SDK 6.0, пакет SDK 7.0 и т. д., у вас будут установлены шаблоны пакета SDK. Однако если начать с более поздней версии пакета SDK, например 7.0, включены только шаблоны для этой версии. Шаблоны для любого другого выпуска не включены.
Шаблоны .NET доступны в NuGet, и их можно установить как любой другой шаблон. Дополнительные сведения см. в разделе Установка размещенного пакета NuGet.
Например, пакет SDK для .NET 9 включает шаблоны для консольного приложения, предназначенного для .NET 9. Если вы хотите использовать .NET Core 3.1, необходимо установить пакет шаблона 3.1.
Попробуйте создать приложение, предназначенное для .NET Core 3.1.
dotnet new console --framework netcoreapp3.1Если появится сообщение об ошибке, установите шаблоны на следующем шаге.
Установите шаблоны проектов .NET Core 3.1.
dotnet new install Microsoft.DotNet.Common.ProjectTemplates.3.1Попробуйте создать приложение еще раз.
dotnet new console --framework netcoreapp3.1Вы увидите сообщение о том, что проект был создан.
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.