C# 命名規範實務指南:風格、原則、控制項前綴與命名空間組織
前言 良好的命名能讓程式碼自文檔化,降低認知負荷。本文整理基於微軟官方規範與實務經驗的 C# 命名指南,涵蓋大小寫風格、識別符分類、核心原則、控制項前綴、命名空
C# 資料存取上下文模式:實現 Connection 與 Transaction 的透明管理
問題:隱式耦合導致的擴充困境 傳統資料存取方法常在內部自行建立/關閉 SqlConnection 與 SqlTransaction: public void U
ASP.NET 伺服器端產出 Excel 的最佳實踐:COM 互操作與資源釋放完整指南
核心挑戰:Excel.exe 殭屍進程 使用 Microsoft.Office.Interop.Excel 產生報表時,若未正確釋放 COM 物件,伺服器將殘留
SQL Server CLR 整合:在預存程序中呼叫 C# 組件實現 FileTime 轉換
場景痛點 資料庫儲存 DateTime.ToFileTime() 產生的 long 值(1601 年起始的 100ns 刻度),T-SQL 原生無 FromFi
C# 型別轉換完全指南:從裝箱拆箱到日期格式化的實戰詳解
一、別名與裝箱/拆箱的真相 C# 的基本型別(int、double、bool 等)實際上是結構體,對應 System.Int32、System.Double、S
C# 將 HTML 相對路徑轉換為絕對路徑的實作方案
需求背景 抓取網頁內容、郵件模板處理、內容遷移等場景中,HTML 原始碼常包含相對路徑(/images/logo.png、../style.css),直接使用會
C# 啟動外部程序的三種核心模式與實戰技巧
Process 類別:跨進程操作的核心 System.Diagnostics.Process 類別提供啟動、監控、控制外部程序的完整功能。根據業務需求,主要有三
C# 3.0 隱含型別區域變數:var 關鍵字完全指南
從顯式型別到隱含型別 C# 3.0 引入 var 關鍵字,讓編譯器根據初始化運算式自動推斷變數型別,減少冗長的型別宣告: 傳統寫法 int x = 7; st
C# 3.0 擴展方法詳解:為現有型別注入新功能
什麼是擴展方法? 擴展方法允許開發者在不修改原始型別、不繼承、不重新編譯的情況下,為現有型別(包括介面、實值型別、參考型別)新增方法。這類似於裝飾器模式,但語法
C# 3.0 Lambda 表達式深度解析:從匿名方法到表達式樹
Lambda 表達式:更優雅的匿名方法 Lambda 表達式可視為 C# 2.0 匿名方法的進化版本。在 C# 2.0 中,我們透過 delegate 關鍵字編
C# 3.0 集合初始化器:語法、巢狀結構與編譯器降級原理
前言 集合初始化器讓集合建立與元素添加合而為一,語法簡潔如列舉初始化。本文解析語法規則、巢狀初始化、編譯器轉換為 Add 呼叫的 IL 邏輯。 基本語法 /
C# 3.0 匿名型別:編譯器自動產生的唯讀類別
前言 C# 3.0 引入匿名型別,讓開發者無需預先定義類別,即可建立具名屬性的物件。廣泛用於 LINQ 投射、暫時資料封裝。本文解析語法、編譯器自動產生的 IL
C# 3.0 查詢運算式:LINQ 語法與 SQL 相似度解析
前言 C# 3.0 引入查詢運算式,將類 SQL 語法內建於語言中,支援對記憶體集合、XML、資料庫等資料源進行統一查詢。本文對比傳統 ADO.NET 字串拼接
C# 基礎語法全景:陳述式、區塊、註解、命名慣例與 Main 進入點
前言 本文整理自《C# 程式設計入門經典》,涵蓋 C# 程式碼外觀、空白不敏感、陳述式終止、區塊結構、三種註解、大小寫敏感、命名慣例與控制台應用程式基本架構。
C# 2.0 泛型程式設計基礎:定義、繼承、約束與 JIT 實例化機制
前言 泛型是 C# 2.0 / .NET 2.0 引入的里程碑特性,實現「型別參數化」,同時解決型別安全與效能(避免裝箱/拆箱)兩大痛點。本文系統整理泛型類別、
C# 屬性完整指南:封裝私有欄位、索引器、執行緒安全與實務陷阱
前言 屬性是 C# 封裝資料存取的核心機制,兼具欄位的簡潔語法與方法的邏輯控制能力。本文比較三種存取私有欄位的方式,解析屬性 IL 實現、索引器、執行緒安全、參
C# 常數定義:const vs readonly 深度解析與選擇指南
前言 C# 提供兩種定義常數的方式:const(編譯期常數)與 readonly(執行期常數)。兩者在記憶體模型、型別限制、版本相容性上有本質差異。本文深度解析