C# 執行存儲過程並取得返回值:SqlParameter Direction 完整範例
需求 呼叫 SQL Server 預存程序,取得 `RETURN` 值或 `OUTPUT` 參數。 預存程序範例 CREATE PROCEDURE usp_
C# 查詢路由介面 Socket.IOControl:原始碼分析與 .NET API 設計吐槽
前言 有時需要知道本機連向遠端伺服器實際走哪張網卡、哪個來源 IP(類似 `pathping` 第一跳)。透過 `Socket.IOControl(IOCont
C# 連接 MySQL 完整範例:MySqlConnector 最佳實踐與常見坑點
前言 官方 `MySql.Data` 驅動歷經多次易手,現已開源但更新緩慢。社區廣泛推薦 **MySqlConnector**(NuGet: `MySqlCon
C# 泛型實現資料庫無縫切換:MySQL ↔ SQL Server 零業務代碼修改
前言 專案初期選用 MySQL,後期客戶要求改 SQL Server。利用 C# 泛型約束 `where T : IDbConnection, new()`,將
C# ASP 風格分頁顯示:手寫分頁邏輯與現代替代方案
前言 早期 ASP 開發者習慣在頁面直接撰寫分頁邏輯。ASP.NET WebForms 雖有 `DataGrid`/`GridView` 內建分頁,但理解底層分
C# 移除 HTML 標籤:Regex 單行實作與效能優化
需求 快速移除字串中所有 HTML 標籤(``, ``, `` 等),保留純文字內容。 單行 Regex 實作 /// /// 移除所有 HTML 標籤
C# 程式化管理 IIS 虛擬目錄:DirectoryServices 完整封裝與操作指南
前言 透過 `System.DirectoryServices` 呼叫 ADSI (Active Directory Service Interfaces),可
C# MSMQ 訊息佇列 Windows 服務架構:多執行緒處理、路由與組件調用完整實作
前言 Microsoft Message Queuing (MSMQ) 配合 .NET `System.Messaging` 命名空間,提供可靠的非同步訊息傳遞
C# 使用 National Instruments CWGraph 控件繪製高效能圖表
前言 處理大量數據(十萬至百萬點)的即時波形顯示,標準 `Chart` 控件或 Office Web Components 常因效能不足而卡頓。National
C# 2.0 匿名方法深度解析:委派內聯、捕獲變數與最佳實踐
前言 C# 2.0 引入**匿名方法**,允許在委派預期的位置直接撰寫方法主體,無需獨立命名方法。這不僅減少樣板代碼,更開啟了**閉包**與**變數捕獲**的強
C# 呼叫 Win32 API SendMessage:P/Invoke 簽名、訊息攔截與 IMessageFilter 過濾實戰
前言 雖然 WinForms 採用事件驅動模型,但底層仍是 Windows 訊息迴路。透過 P/Invoke 呼叫 `SendMessage`/`PostMes
C# 文字檔編碼自動偵測:BOM 掃描與 StreamReader 正確讀寫指南
前言 讀寫中文文字檔最常見的亂碼原因是:**編碼不匹配**。`StreamReader`/`StreamWriter` 預設使用 `Encoding.Defau
C# 實作氣球提示視窗:不規則表單與 GraphicsPath 區域繪製全解析
前言 Windows 系統托盤的「氣球提示」風格視窗(帶三角箭頭的圓角矩形)常用於工具提示、表單驗證錯誤顯示。本文完整解析如何用 WinForms 繪製不規則表
C# 進程管理與強制終止:System.Diagnostics.Process 完整應用指南
前言 .NET 透過 `System.Diagnostics.Process` 提供強大的進程列舉、資訊查詢、啟動與終止功能。本文詳細說明如何掃描系統進程、讀取
C# 洗牌演算法實作:Fisher-Yates Shuffle 與三種隨機數策略比較
前言 陣列/列表隨機重排(Shuffle)是常見需求:撲克牌發牌、題目隨機、測試資料打散。本文實作經典 Fisher-Yates (Knuth) Shuffle
C# 發送電子郵件完整教學:System.Web.Mail 與現代替代方案
前言 .NET Framework 早期透過 `System.Web.Mail` 命名空間提供郵件發送功能,雖已標記為過時(Obsolete),但在維護 .NE
C# List.Remove 失效之謎:物件相等性比較與 IEquatable 實作指南
現象重現:為什麼 Remove 沒移除? var products = new List<Product>(); products.Add(GetP
C# 開發批量 Access 資料庫壓縮工具:核心技術與實作細節
專案背景 Access (`.mdb`/`.accdb`) 長期運行後會產生碎片,檔案膨脹、效能下降。定期壓縮修復 (`CompactDatabase`) 是維