NuGet 套件 (PDF, OCR, 條碼, Excel):更新列表
這個 .NET 套件管理程式庫稱為 NuGet。 開發者最常使用的語言之一是 C#,這表明它是一個非常高效的語言。 還有其他免費的 NuGet 套件可以進一步提升 C# 的生產力。 NuGet 套件在各種 IDE 中都有使用,例如 Visual Studio。
我們可以在不同的環境中使用相同的 NuGet 套件,如 Web、Windows、Mobile 等等。我們可以在套件管理主控台中安裝更新版本的 NuGet 套件。 Visual Studio 已經安裝了內建的高效 NuGet 擴充功能。 使用 NuGet 套件管理器,您可以在儲存庫中以方便的方式建立和使用套件。 它還幫助我們發佈套件。
在 Visual Studio 的原始碼控制專案中執行以下命令以新增一個 NuGet 套件:
dotnet add package --source {source_name} --version {package_version} {package_name}
參數描述
- source_name: 所需的 .NET 套件來源名稱。
- package_name: .NET/.NET Core 程式庫的 NuGet 套件名稱。
- package_version: 套件版本號。
本文介紹了使用 C# 在多個專案中提升開發者生產力的前 10 個 NuGet 套件:
- RestSharp
- Json.NET
- Iron Software
- Serilog
- NUnit
- Insight.Database
- FluentValidation
- FluentEmail
- Hangfire
- LazyCache
RestSharp
表現狀態轉移被稱為 REST。RestSharp 在 NuGet 上的下載量已超過 1.9 億,每天平均下載超過 43,000 次。 它是 .NET 專案中最廣泛使用的 HTTP 客戶端程式庫,使 C# 開發者能夠通過 HTTP 輕鬆調用遠端資源,負責處理請求正文的 JSON 或 XML 序列化以及響應中的反序列化。 RestSharp NuGet 套件的新版本支援:
- 同步和非同步查詢。
- 序列化和反序列化。
- 各種 HTTP 請求型別,包括 GET、POST、PUT 和 DELETE。
- 不同的身份驗證格式。
Json.NET
Json.NET 是一個簡約的 JSON 處理程式庫。 Json.NET 在 NuGet 上的下載/安裝量已超過 10 億,是 .NET 平台的一個免費開源套件。 其顯著特點如下:
- 將任何 .NET 物件序列化和反序列化為 JSON。
- XML 與 JSON 之間的轉換為 C# 資料模型。
- 支援使用物件、JArray 和 JValue 進行 LINQ 查詢。
- 性能比 JavaScriptSerializer 快 25%,比 DataContractJsonSerializer 快 50%。
Iron Software
對於使用 PDF、OCR、Excel 和條碼的 .NET 和 Entity Framework (EF) Core 程式員,Iron Software 建立了一系列公共儲存庫程式庫,包含有用的程式碼。 下載量超過 550 萬次,可在 NuGet 套件管理器中找到,使用如下所述的不同套件名稱。 詳細介紹了 Iron Software 產品的主要特點。
IronXL
- 編輯、讀取和載入 XLS、XLSX、CSV 和 TSV 格式的資料。
- 將資料導出為 CSV、TSV、JSON、XLS 和 XLSX,以用於歸檔目的。
- 排序欄、行和範圍。
- 設計功能,包括單元格視覺風格、字體、大小、邊框、對齊、鎖定、凍結單元格、隱藏/顯示行和數字格式。
- 簡單的 C# 和 VB.NET Excel 文件 API。
IronBarcode
- 支援多種型別的條碼和 QR 標準,包括 UPC、EAN、Code 39、QR、Data Matrix 等。
- 處理條碼圖像以提高閱讀準確性和速度。 這包括校正旋轉、噪音、變形和傾斜。 適合使用多核系統進行批量處理的伺服器程式。
- 建立各種文件型別的條碼和 QR 碼,允許在若干格式中修改如文字、旋轉、大小、顏色和質量,例如 PDF、JPG、TIFF 等。
IronOCR
- 使用 Tesseract 5 引擎從圖像或 PDF 中提取文字、條碼和 QR 碼。
- 支持超過 125 種語言,允許自定義語言配置。
- 與多頁 GIF 和 TIFF 圖像格式相容。
- 提升掃描質量不佳的圖像質量。
- 支持多執行緒,促進多個同步操作。
- 將結構化資料輸出為頁面、段落、行、單詞和字元。
IronPDF
- 從 HTML、HTML5、ASPX 和 Razor/MVC 視圖生成 PDF 檔。
- 有能力列印、合併、拆分 PDF 檔、提取和搜尋文字、將頁面光柵化為圖像、將 PDF 轉換為 HTML,反之亦然。
- 允許建立來自 URL 的文件,並提供使用網路登錄憑證、代理、Cookie、HTTP 標頭等選項。
欲了解更多詳情,請參考 Iron Software 產品。
Serilog
日誌記錄對於應用程式開發至關重要,因為它幫助開發者發現和修復問題。 Serilog 是 .NET 中一種新的日誌記錄和變更追蹤系統,以 JSON 格式記錄動作、例外、資訊和警告。 Serilog 提供結構化日誌,通過提供更好的上下文和資料洞察力來增強傳統日誌。 它支持診斷日誌記錄到文件、控制台和各種儲存系統。
NUnit
測試對於確保程式碼正確性至關重要。 NUnit 是一個開源的 .NET 單元測試框架,通過將大型應用分解為較小的可測試單元來簡化測試過程。 它有助於在開發過程中識別漏洞,並根據MIT授權進行分發。
Insight.Database
Insight.Database 是一個適用於 .NET 的微型 ORM,通過將 C# 物件轉換為資料庫記錄和反向轉換來簡化資料庫操作。 它提供擴展方法,以便更輕鬆地處理資料庫和架構遷移。 關鍵特徵包括:
- 自動打開和關閉資料庫連接。
- 簡化儲存過程執行。
- 支援多個結果集。
FluentValidation
FluentValidation 是一個 .NET 套件,用於使用 lambda 表達式和 Fluent 介面建立強型別的驗證規則。 它通過提供一個驗證邏輯的地方來維持乾淨的領域程式碼。 FluentValidation 11 支援多種平台,如 .NET Standard、.NET Core 和 .NET 5、6 和 7。
FluentEmail
FluentEmail 是一個開源的 .NET 函式庫,旨在簡化將電子郵件發送功能整合到 .NET 應用中。 它支持使用 Razor 建立電子郵件模板,並通過 SendGrid、MailGun、SMTP 等發送電子郵件。
Hangfire
Hangfire 是一個開源框架,使 .NET 和 .NET Core 應用能夠執行背景任務。 它管理如大量電子郵件通知、圖形處理和從不同格式(如 XML 和 JSON)批量導入的任務。
LazyCache
LazyCache 提供了一個簡單的記憶體快取服務,通過快取網路服務呼叫、複雜物件構造和資料庫操作來提高應用程式性能。 其預設設置會將內容快取最多 20 分鐘。
結論
討論了前 10 個增強 C# 編程生產力的 NuGet 套件。 這些套件可以減輕工作負擔並加快開發過程。 NuGet 客戶端工具使套件的建立和使用變得便利,而 Iron Software 提供了對各種 .NET Framework和語言(如 C#、VB 和 F#)的相容庫,為企業和初創企業提供先進解決方案。
常見問題
NuGet 套件如何提升 C# 專案的生產力?
NuGet 套件透過提供可重用的程式庫來簡化相依性管理,並加快 Web、Windows 和行動裝置等不同環境的開發流程,從而提升 C# 專案的生產力。
NuGet 在 .NET 開發中扮演什麼角色?
NuGet 作為 .NET 的套件管理器,協助建立、分發和使用軟體套件。它與 Visual Studio 等 IDE 無縫整合,提升 C# 開發者的生產力。
如何使用套件管理器控制台安裝 NuGet 套件?
要使用套件管理器控制台安裝 NuGet 套件,可以使用命令 Install-Package {package_name}。此命令將下載並安裝指定的套件及其相依性。
Iron Software 的程式庫對 PDF 管理提供哪些功能?
Iron Software 的 PDF 管理程式庫提供產生 HTML 格式的 PDF、合併和拆分 PDF、文字提取和搜尋,以及將 PDF 與 HTML 互轉等功能。
IronOCR 如何應用於 .NET 應用程式中?
IronOCR 可以用於 .NET 應用程式中提取圖像或 PDF 中的文字、條碼和 QR 碼。它支援超過 125 種語言,並優化改進較差掃描文件的品質。
在 .NET 應用程式中使用 Serilog 的主要好處是什麼?
Serilog 在 .NET 應用程式中提供結構化日誌記錄,提升日誌可讀性並提供更好的資料洞察力。它支援記錄到多種輸出,包括文件、控制台和雲端服務。
Json.NET 為何在 .NET 中的 JSON 處理如此受歡迎?
Json.NET 在 .NET 中的 JSON 處理中受歡迎是因為它的有效序列化和反序列化能力,以及其處理 JSON 資料的豐富功能集。
Hangfire 如何促進 .NET 中的背景任務管理?
Hangfire 通過允許應用程式在背景中執行任務,例如郵件通知和資料處理來促進 .NET 中的背景任務管理,從而提升應用程式性能和響應能力。
FluentValidation 在 .NET 應用程式中的意義是什麼?
FluentValidation 對於 .NET 應用程式來說很重要,因為它建立強型別的驗證規則,通過集中驗證邏輯並減少域模型中的混亂來保持乾淨的程式碼。
LazyCache 如何提升 .NET 應用程式的性能?
LazyCache 通過將複雜操作和網路服務呼叫快取到記憶體中,從而減少重複處理和資料庫呼叫,來提升 .NET 應用程式的性能並加快應用程式響應時間。




