發現更多有趣的 .NET Core 應用

.NET Core SDK 已經內建提供不少 project template,但事實上 .NET Core 官網還提供不少 project template,可自行另外安裝。

Version


macOS High Sierra 10.13.3
.NET Core SDK 2.1.101

列出所有 Project Template


1
$ dotnet new -l
  • -l : list ,使用 dotnet new 加上 -l 參數,將列出目前系統所安裝的所有 project template。

sdk001

我們可以發現內建的 project template 對 C# 支援最齊全,預設就是 C#,其次是 F#。

sdk001

事實上在 .NET Core 官網的 Available templates for dotnet new,還準備了不少其他 project template 可供下載。

安裝 Project Template


sdk003

以 C# 為例,.NET Core 官網亦提供了 AWS Lambda .NET Core Templates,讓我們自動安裝相關工具與 NuGet package。

1
$ dotnet new -i "Amazon.Lambda.Templates::*"
  • -i : install,使用 dotnet new -i 安裝新 project template

sdk004

  1. 輸入 dotnet new -i "Amazon.Lambda.Templates::*" 安裝 Amazon Lambda project template

由於 Amazon Lambda project template 的 NuGet package 較大,安裝要一點時間

sdk005

  1. 安裝完後會自動執行 dotnet new -l,會安裝不少 Amazon Lambda 相關的 project template

移除 Project Template


既然能安裝 project template,也就要能移除 project template,但比較麻煩。

.NET Core SDK 預設將所有的 project template 安裝在 Users/oomusou/.templateengine/dotnetcli/v2.1.101/packages 目錄下。

其中 oomusou 為 user name

sdk006

  1. amazon.lambda.template.2.0.3.nupkg 為剛剛所安裝的 Amazon Lambda project template

我們可以發現每個 project template 事實上都是 NuGet package

1
$ dotnet new -u .../amazon.lambda.templates.2.0.3.nupkg
  • -u : uninstall,使用 dotnet new -u 移除已安裝的 project template NuGet package

NuGet package 不可使用 ./ 方式,但可用完整路徑或 ~/

sdk007

  1. 輸入 dotnet new -u /Users/…/amazon.lambda.templates.2.0.3.nupkg,必須是完整路徑或 ~/,不可為 ./

sdk008

  1. Amazon Lambda project template 已順利移除。

Conclusion


  • 若想知道 C# 與 F# 還有什麼應用,可上 Available templates for dotnet new 發現更多有趣的 project template
  • 若要移除 project template,NuGet package 必須使用 完整路徑~/,不可使用 ./
2018-03-16