.NET 幫助

什麼是NuGet?

發佈 2022年10月30日
分享:

能讓開發者編寫、交換和使用功能代碼的系統是任何現代開發平台的關鍵組成部分。這些功能代碼被封裝在「包」中,並且還包括使用它們的項目所需的其他材料,例如已編譯的代碼。 (以 DLL 的形式)優質的 .NET 程式碼共享方式 (包括 .NET Core) 是 NuGet。NuGet 使得生成、托管和检索 .NET 框架的软件包成为可能。NuGet 管理的软件包称为 NuGet 包。

什麼是 NuGet?NuGet 包只是具有扩展名 .nupkg 的 zip 文件。它包含软件运行所需的所有 DLL 文件。它还包含一个描述性清单,其中包括软件包的版本号等信息。開發人員只需安裝 NuGet 包,他們就能使用該包提供的方法。

NuGet 功能

  • NuGet 添加私人托管支持于中央 nuget.org 儲存庫。
  • NuGet 提供了開發人員需要的工具來創建、發布和安裝套件。
  • NuGet 會記錄專案中使用的套件,並允許您從該列表中還原和更新這些套件。
  • NuGet 會記錄所有與套件結構相關的規範,例如本地化以及它們的參考方式。
  • NuGet 提供了許多 API 來程式化地與其所有服務互動,並為發布 Visual Studio 擴充功能的開發人員提供支援。
  • NuGet 包含一個套件快取和一個全域套件資料夾,以便更輕鬆地進行安裝和重新安裝。如果本機設備上已經存在某個套件,快取將不會從中央儲存庫下載該套件,而是會從快取中提供該套件。

NuGet 套件如何運作?

NuGet 作為公共主機,維護一個中央存儲庫,裡面有超過 100,000個獨特的包裹每一天,數百萬的 .NET/.NET Core 開發人員使用這些套件。NuGet 也讓您可以將套件私密地託管在雲端。 (例如,在 Azure DevOps 上)在私有網路上,甚至在本地文件系統上。結果,這些套件僅對那些擁有主機存取權的開發人員可用,讓您能將套件提供給特定群體的消費者。

無論它的性質如何,主機都能作為套件創建者和套件消費者之間的鏈接。創建者開發有用的NuGet套件並分發到主機。然後消費者搜尋可存取的主機以找到有用且相容的套件,下載並將這些套件包含在他們的專案中。一旦在專案中安裝,這些套件的API即可供專案代碼的其他部分訪問。

什麼是NuGet,圖1

NuGet 工具

有六種工具用於管理 NuGet 套件。

.NET CLI

這是一個命令行介面 (命令行界面 (CLI)) 適用於 .NET Core 和 .NET Standard 的庫,以及針對 .NET Framework 的 SDK 風格項目 (查看 SDK 屬性)某些 NuGet CLI 功能可直接在 .NET Core 工具鏈中使用。.NET CLI 與 nuget.exe CLI 一樣,不會與 Visual Studio 專案互動。

NuGet.exe CLI

它是一個針對 .NET Framework 函式庫和非 SDK 風格項目的 CLI,目標是 .NET Standard 函式庫。它提供了 .NET CLI 的所有功能,一些命令僅適用於包裝創建者,其他命令僅適用於消費者。包裝創建者,例如,使用 NuGet 包裝 command to generate a 包裝age from various assemblies and related files. Package users use NuGet 安裝 to include 包裝ages in a project folder. Both 包裝age developers and 包裝age users uses NuGet 配置 要設置 NuGet 配置變數。

NuGet CLI 不會與 Visual Studio 項目交互,因為它是一個平台無關的工具。

套件管理器主控台

套件管理器主控台提供 PowerShell 指令,用於在 Visual Studio 專案中安裝和管理套件。

套件管理器 UI

套件管理器 UI 提供了一個使用者友善的介面來安裝和管理 Visual Studio 專案中的套件。

管理 NuGet 套件管理器用戶界面

此工具還提供了一個用戶友好的界面,用於在 Visual Studio 專案中安裝和管理套件。此工具僅適用於 Mac 用戶。

MSBuild

MSBuild允許用戶直接從MSBuild工具鏈中創建和還原項目中使用的包。

包管理器UI和包管理器控制台是管理NuGet包最廣泛使用的工具。我們現在將探討它們是如何使用的。

使用 NuGet 套件管理器 UI

在 Visual Studio 中,從頂部選單列中點擊工具,然後選擇 NuGet 套件管理器 > 為解決方案管理 NuGet 套件。

如下圖所示,將會出現一個新窗口。

請問什麼是 NuGet,圖 2

在已安裝的標籤頁中,所有已安裝的 NuGet 套件都將出現在這裡。

點擊瀏覽按鈕,並在搜尋欄中輸入套件的名稱。我們將搜尋 IronBarcode 作為一個例子。

什麼是 NuGet,圖3

點擊安裝按鈕,該庫將被安裝並準備就緒。

IronBarcode 是一個由 Iron Software 開發和維護的程式庫,幫助 C# 軟體工程師在 .NET 應用程式中讀取和寫入條碼和 QR 碼。

核心功能包括:

  • 從影像或 PDF 文件中讀取單一或多個條碼和 QR 碼。
  • 影像校正功能,包括調整傾斜、方向、噪音、低解析度、對比等。
  • 創建條碼並應用於圖像或 PDF 文檔。
  • 將條碼嵌入到 HTML 文檔中。
  • 條碼樣式化並添加註釋文本。
  • QR 碼寫入功能允許添加標誌、顏色和高階 QR 對齊。

了解更過有關 IronBarcode 的產品信息 文檔頁面.

使用套件管理器主控台

在 Visual Studio 中,從頂部選單欄點擊工具並選擇 NuGet 套件管理員 => 套件管理器主控台。

套件管理器主控台視窗將如下面所示出現。

什麼是NuGet,圖4

讓我們使用套件管理器主控台來安裝套件。

The Install-Package 'package-Name' 命令用於安裝該套件。例如:

Install-Package IronPdf

IronOCR 是一個C#軟件庫,允許.NET軟件開發人員檢測和讀取圖像和PDF文件中的文本。它使用了目前最先進的Tesseract引擎。 IronOCR 卓越無比 其他 OCR 庫 處理充滿瑕疵的真實圖像時 (例如數位雜訊、低品質解析度等。) 它支持多种编程语言。

閱讀更多 技術文件 關於 IronOCR 產品網站.

一些有用的NuGet套件

本節將介紹一些可用於資料庫和檔案處理的有用NuGet套件。

實體框架

實體框架 是目前最常見且功能最強大的用於處理 .NET 應用程序中資料庫的 NuGet 套件。

這是一個由 Microsoft 支援的開源 ORM 框架,允許開發人員使用特定領域的對象來處理數據,而不是使用儲存數據的底層資料庫表和列。當處理數據時,開發人員可以在更高的抽象層級上操作。這使他們能夠用比傳統應用程序更少的代碼來創建和維護面向數據的應用程序。

有單獨的 NuGet 套件可用於管理 SQL 伺服器、Oracle、MySQL 和 PostgreSQL 資料庫伺服器。

這個 快速開始 頁面提供了更多關於實體框架功能的信息。

IronPDF

IronPDF 解決為應用程式添加 PDF 處理功能的難題。 IronPDF 自動將格式化文件轉換為PDF,還允許開發人員創建、編輯和匯出PDF文件。

IronPDF的主要功能包括:

  • 使用 .NET 將網頁表單、本地HTML頁面及其他網頁轉換為PDF。
  • 允許用戶下載文件、通過電子郵件發送或將它們存儲在雲端。
  • 生成發票、報價單、報告、合同等文件。
  • 支持ASP .NET、ASP .NET Core、網頁表單、MVC、Web API在 .NET Framework 和 .NET Core 上工作。

閱讀更多關於IronPDF的信息,請訪問其 產品文件頁面.

IronXL

IronXL 幫助 C# 軟體工程師在 .NET 應用程式中讀取、建立和編輯電子表格檔案。 IronXL 在不使用 Office Excel 相互操作 (Interop) 的情況下運行良好,且不需要額外的依賴項或安裝 Microsoft Office。

您可以在以下網址了解更多關於 IronXL 的資訊: 這裡.

Iron Software 提供所有五個庫 (IronPDF, IronXL, IronBarcode, IronWebscraper, 和 IronOCR) 在一個 .NET 套件透過購買完整套件,您可以以兩個價格獲得五個庫。所有購買均包括終身產品支持。

概要

NuGet 是 .NET 應用程式的套件管理器。NuGet 客戶端工具提供了建立、分享和檢索套件的能力。NuGet 廣場是所有套件作者和消費者使用的中央套件儲存庫。

  • NuGet 提供了中央 nuget.org 支援私有託管的倉庫。
  • NuGet 提供開發者創建、發佈和安裝套件所需的工具。
  • NuGet 維護專案中所使用套件的參考,並能從該列表中恢復和更新這些套件。
< 上一頁
Razor vs Blazor

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >