C# 程式設計總結(七):資料加密全解析——雜湊、對稱與非對稱加密
前言 資料加密是資訊安全的基石。本文系統整理雜湊演算法(MD5、SHA1)、對稱加密(DES、AES)、非對稱加密(RSA)的原理、優缺點與 C# 實作,並針對
C# 程式設計總結(八):數位簽名原理與 RSA 實作
前言 數位簽名結合雜湊演算法與非對稱加密,實現身分驗證、資料完整性、防抵賴等核心安全功能。本文解析其工作流程、主要作用,並提供基於 RSA + SHA1 的 C
C# 程式設計總結(九):字元編碼基礎與亂碼成因分析
前言 亂碼是開發者常遇到的痛點。本文從字元、字元集、字元編碼的基本概念切入,詳細比較 ASCII、GB2312、GBK、Big5、GB18030、Unicode
C# 程式設計總結(十):字元編碼轉換與常見編碼處理技巧
前言 在實際開發中,為了滿足傳輸、儲存或顯示等特殊需求,字元資料常需依據特定規則進行轉碼。本文將系統整理 C# 中常見的字元轉碼場景,包含字串編碼轉換、HTML
C# 數位憑證完整指南:X.509 架構、CA 信任鏈、PFX/USB Key、SSL/簽名/加密實戰
數位憑證是網路世界的「身分證」,解決**竊聽、偽裝、篡改、抵賴**四大威脅。本文系統說明 X.509 結構、CA 運作流程、公開金鑰基礎建設(PKI)、常見檔案
C# 非同步程式設計全景:同步 vs 非同步、APM/EAP/TAP 三模式、I/O 密集型為何必須用非同步
非同步不是多執行緒的同義詞。**非同步 = 啟動作業 → 立即返回 → 完成時通知**,主執行緒不阻塞。I/O 密集型(檔案、網路、資料庫)非同步能釋放執行緒回
C# 斷點續傳實作:HTTP Range 標頭、HttpWebRequest AddRange 與進度條完整範例
斷點續傳核心在於 HTTP/1.1 Range 標頭:客戶端告知伺服器「我要第 100-199 位元組」,伺服器回應 206 Partial Content 與
C# 資料壓縮完全指南:GZipStream、SharpZipLib(BZip2)與檔案/字串/位元組陣列實作
.NET 內建 System.IO.Compression.GZipStream 提供無損壓縮,符合 RFC 1952 標準,相容 .gz 工具解壓。若需更高壓
動態編譯入門(一):CSharpCodeProvider 運行時編譯 C# 字串為組件
動態編譯** = 在程式運行期間,將 C# 代碼字串編譯成組件,再透過反射調用其中的成員。類似 SQL EXEC(...) 或 JS eval(),但具備強型別
動態編譯實戰(二):手寫 JSON 序列化器——反射版 vs 動態編譯版效能對決
以「複雜物件轉 JSON」為實戰題材,對比 純反射實作 與 動態編譯實作 的代碼結構與效能。動態編譯版針對每個型別生成專屬 ToJson 方法(字串拼接 + S
動態編譯效能進階:拋棄反射,用介面 + 實例方法實現零反射高速調用
動態編譯雖強,若每次調用仍靠 MethodInfo.Invoke 反射,效能優勢盡失。本文揭示關鍵技巧:**將靜態方法改為實例方法、實作共用介面、編譯後轉型為介
動態編譯封裝庫 DynamicCompile:三大場景一行搞定,支援快取與委派零反射調用
前三篇已掌握 CSharpCodeProvider 基礎用法、實戰 JSON 序列化、拋棄反射改用介面零反射調用。本文將其封裝為靜態類別 DynamicComp
MEF 實戰(一):Managed Extensibility Framework 入門——不重新編譯主程式即可熱插拔擴充
傳統擴充方式:新增功能 → 修改主專案參考 → 重新編譯部署。MEF(Managed Extensibility Framework) 打破此循環:主程式只定義
MEF 實戰(二):Export/Import 基礎、ImportMany 與 Lazy 延遲載入
MEF 核心在於 Export(匯出) 與 Import(匯入) 的契約匹配。本文從定義共用介面 IMember 開始,逐步建構:以 [Export(typeo
MEF 實戰(三):只匯出類別成員(屬性/方法),不匯出整個類別
MEF 的 [Export] 不只能貼在類別上,也能貼在 屬性、欄位、方法 上。這讓「單一類別管理多個擴充點」成為可能:一個 Works 類別內建 FirstW
MEF 實戰(四):三大目錄類別與 AggregateCatalog 組合搜尋範圍
MEF 發現擴充組件的來源稱為 Catalog(目錄)。本文詳細說明三大內建目錄類別的使用時機與範例,並示範 AggregateCatalog 合併多個搜尋範圍
MEF 實戰(五):導出元資料,讓匯入端能篩選、檢視擴充資訊
MEF(Managed Extensibility Framework)的 Metadata(元資料) 機制,讓匯出端能在 [Export] 時附加額外資訊(版
管線模式重構:把一長串 if-else 變成可插拔的處理器鏈
隨著業務增長,GetOrder 方法裡的 if (cond1) ... if (cond2) ... if (cond3) ... 越寫越長、越難維護。本文提出