跳至主要內容

標籤「.NET」的 2 篇文章

查看所有標籤

.NET CLI 備忘錄

這篇備忘錄記錄了 .NET CLI (命令行界面)。

資訊

.NET CLI 是一個跨平台的工具集,用於開發、構建、運行、發布和管理 .NET 項目。它提供了一組命令行命令,讓你可以在任何支持 .NET 的操作系統(Windows, Linux, macOS)上高效地工作,無需依賴 IDE。

1. 基本命令​

A. 建立新專案​

dotnet new 命令用於建立新專案、配置文件或解決方案。

dotnet new console -o MyConsoleApp # 建立一個新的控制台應用程式
dotnet new webapi -o MyWebApi # 建立一個新的 ASP.NET Core Web API 專案
dotnet new sln -n MySolution # 建立一個新的解決方案文件
  • -o:指定輸出目錄(專案名稱)。
  • -n:指定解決方案名稱。

B. 還原依賴​

dotnet restore 命令還原專案的依賴項和工具。

dotnet restore

通常,dotnet build、dotnet run 和 dotnet publish 命令會隱式執行還原操作。

C. 構建專案​

dotnet build 命令編譯專案及其依賴項。

dotnet build
dotnet build --configuration Release # 以 Release 配置構建

D. 運行專案​

dotnet run 命令在開發環境中運行專案。它會自動構建專案,然後運行可執行文件。

dotnet run

E. 測試專案​

dotnet test 命令運行專案中的單元測試。

dotnet test

F. 發布專案​

dotnet publish 命令將應用程式及其依賴項打包為部署單元。

dotnet publish -c Release -o ./publish # 以 Release 配置發布到 'publish' 目錄
  • -c Release:指定 Release 配置。
  • -o ./publish:指定輸出目錄。

2. 專案管理​

A. 添加專案到解決方案​

dotnet sln add MyConsoleApp/MyConsoleApp.csproj

B. 添加參考 (Reference)​

將一個專案參考添加到另一個專案:

cd MyWebApi
dotnet add reference ../MyConsoleApp/MyConsoleApp.csproj

C. 添加套件 (Package)​

添加 NuGet 套件到專案:

dotnet add package Newtonsoft.Json

D. 移除套件​

移除 NuGet 套件:

dotnet remove package Newtonsoft.Json

3. 工具命令​

A. 管理全局工具​

dotnet tool 命令用於安裝、列出、更新或卸載 .NET 全局工具。

dotnet tool install --global dotnet-ef # 安裝 Entity Framework Core CLI 工具
dotnet tool list --global # 列出所有全局工具
dotnet tool update --global dotnet-ef # 更新工具
dotnet tool uninstall --global dotnet-ef # 卸載工具

4. 其他常用命令​

A. 清理專案​

dotnet clean 命令清理專案的輸出文件。

dotnet clean

B. 查看信息​

dotnet --info 顯示有關 .NET SDK 和運行時環境的詳細信息。

dotnet --info

C. 查看幫助​

幾乎所有 dotnet 命令都支持 --help 選項。

dotnet new --help
dotnet build --help

總結​

.NET CLI 是一個功能強大且必不可少的工具,它為 .NET 開發者提供了一個高效、跨平台的工作流。無論是從頭開始創建專案、管理依賴、構建、測試還是發布,熟練掌握 .NET CLI 命令都能極大地提高你的開發效率。

如何為 Ubuntu 安裝 .NET

這篇備忘錄記錄了如何為 Ubuntu 安裝 .NET。

資訊

.NET 是一個免費、開源的開發平台,用於構建各種應用程式,包括 Web、移動、桌面、遊戲和物聯網。在 Ubuntu 上安裝 .NET 可以讓你開發和運行 .NET 應用程式。

1. 預覽 .NET 版本​

在安裝之前,建議查看可用的 .NET SDK 和運行時版本,以選擇你需要的版本。

訪問官方 .NET 下載頁面:https://dotnet.microsoft.com/download/dotnet

通常你會看到 LTS (長期支持) 版本和 Current (當前) 版本。對於生產環境,通常建議使用 LTS 版本。

2. 安裝 .NET SDK (推薦)​

安裝 SDK 會同時包含運行時 (Runtime),這對於開發和運行應用程式都是必要的。

A. 註冊 Microsoft 套件儲存庫​

Microsoft 提供了一個套件儲存庫,以便你可以使用 apt 包管理器輕鬆安裝 .NET。

  1. 安裝必要工具:

    sudo apt update
    sudo apt install -y apt-transport-https ca-certificates curl
  2. 下載並註冊 Microsoft 簽名密鑰:

    curl -fSsL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
  3. 添加 Microsoft 套件儲存庫: 根據你的 Ubuntu 版本,選擇對應的命令。 例如,對於 Ubuntu 22.04 (Jammy Jellyfish):

    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/microsoft.gpg] https://packages.microsoft.com/ubuntu/22.04/prod $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/dotnet.list

    將 22.04 替換為你的 Ubuntu 版本號。$(lsb_release -cs) 會自動獲取你的 Ubuntu 代號。

B. 安裝 .NET SDK​

  1. 更新套件列表:

    sudo apt update
  2. 安裝 SDK: 安裝最新 LTS 版本的 .NET SDK。

    sudo apt install -y dotnet-sdk-8.0 # 安裝 .NET 8 SDK

    如果你想安裝特定版本,例如 .NET 6 SDK,可以使用 dotnet-sdk-6.0。

C. 驗證安裝​

dotnet --version

這應該會顯示已安裝的 .NET SDK 版本。

3. 安裝 .NET Runtime (如果只需運行應用程式)​

如果你只打算運行使用 .NET 開發的應用程式,而不需要開發,可以只安裝運行時。

A. 安裝 ASP.NET Core Runtime​

sudo apt install -y aspnetcore-runtime-8.0 # 安裝 .NET 8 ASP.NET Core Runtime

B. 安裝 .NET Runtime (標準版)​

sudo apt install -y dotnet-runtime-8.0 # 安裝 .NET 8 Runtime

4. 其他安裝方法​

A. 手動安裝​

你可以從 .NET 官方網站下載二進制發行版並手動解壓縮到你喜歡的位置。

  1. 下載:從 dotnet.microsoft.com/download 下載 Linux x64 二進制文件。
  2. 解壓縮:將下載的文件解壓縮到一個目錄,例如 ~/dotnet。
  3. 設置環境變量:將 ~/dotnet 添加到 PATH。
    export DOTNET_ROOT=$HOME/dotnet
    export PATH=$PATH:$HOME/dotnet
    將這些行添加到 ~/.bashrc 或 ~/.zshrc 以便永久生效。

B. 使用 Snap (不推薦,可能不是最新版)​

對於某些 Ubuntu 版本,你可以使用 Snap 安裝 .NET,但通常不推薦,因為 Snap 提供的版本可能不是最新的,或者與 apt 儲存庫的版本存在兼容性問題。

sudo snap install dotnet-sdk --classic --channel=8.0/stable # 安裝 .NET 8 SDK

5. 總結​

在 Ubuntu 上安裝 .NET 最推薦的方法是通過 Microsoft 的 apt 套件儲存庫。這確保了你可以方便地獲取最新更新和安全補丁。無論你是開發者還是應用程式用戶,正確安裝 .NET 都能讓你充分利用這個強大的平台。