共用方式為


管理 .NET 專案與項目範本

.NET 提供的範本系統可讓使用者從 NuGet、NuGet 套件檔案或檔案系統目錄安裝或解除安裝包含範本的套件。 本文描述如何透過 .NET SDK CLI 管理 .NET 範本。

如需建立範本的詳細資訊,請參閱教學課程:建立範本

安裝範本

範本套件是透過 dotnet new install SDK 命令安裝。 您可以提供範本套件的 NuGet 套件識別碼,或包含範本檔案的資料夾。

NuGet 託管套件

.NET CLI 範本套件會上傳至 NuGet 以供廣泛散發。 您也可以從私人摘要安裝範本套件。 可以散發並手動安裝 nupkg 範本檔案 (如本機 NuGet 套件一節中所述),而不是將範本套件上傳至 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

本機 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

Folder

除了從 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

解除安裝範本套件

範本套件是透過 dotnet new uninstall SDK 命令解除安裝。 您可以提供範本套件的 NuGet 套件識別碼,或包含範本檔案的資料夾。

NuGet 套件

安裝 NuGet 範本套件之後,您可以從 NuGet 摘要或 nupkg 檔案解除安裝,方法是參考 NuGet 套件識別碼。

若要解除安裝範本套件,請使用 dotnet new uninstall {package-id} 命令:

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

Folder

透過資料夾路徑安裝範本時,資料夾路徑會變成範本套件識別碼。

若要解除安裝範本套件,請使用 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 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
.NET 9.0 Microsoft.DotNet.Common.ProjectTemplates.9.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
ASP.NET Core 9.0 Microsoft.DotNet.Web.ProjectTemplates.8.0

例如,.NET 9 SDK 包含以 .NET 9 為目標之控制台應用程式的範本。 若您想要以 .NET Core 3.1 為目標,則需要安裝 3.1 範本套件。

  1. 請嘗試建立以 .NET Core 3.1 為目標的應用程式。

    dotnet new console --framework netcoreapp3.1
    

    若您看到錯誤訊息,則需要安裝範本。

  2. 安裝 .NET Core 3.1 專案範本。

    dotnet new install Microsoft.DotNet.Common.ProjectTemplates.3.1
    
  3. 第二次嘗試建立應用程式。

    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.
    

另請參閱