LINQ to SQL 進階系列(二):多對多關聯實作
現實世界常見多對多(M:M)關聯,如「老師-學生」、「使用者-群組」。資料庫中無法直接表達 M:M,必須透過中介表(Junction Table)轉換為兩組一對
LINQ to SQL 進階系列(三):CUD 操作與日誌記錄
CUD 代表 Create(新增)、Update(更新)、Delete(刪除)三種基本資料操作。雖然這些主題已被廣泛討論,但 LINQ to SQL 仍有一些獨
LINQ to SQL 進階(四):使用者定義函數 (UDF) 詳解
UDF 分標量值函數 (SVF)與表值函數 (TVF)。關鍵差異:UDF 支援內聯查詢(可在 SQL 陳述式中直接呼叫),SP 則不支援。LINQ to SQL
LINQ to SQL 進階(五):儲存程序詳細篇
儲存程序與 UDF 差異:SP 支援多結果集、僅回傳 int、支援 Output 參數;UDF 單結果集、可回傳標量/表值、支援內聯查詢。 1. 單一結果集
LINQ to SQL 進階(六):以物件動態查詢與 Log 記錄
傳統動態 SQL 靠字串拼接,LINQ 提供物件導向查詢。本文實作 Find<TEntity>(TEntity obj):依物件非 null 屬性自
LINQ to SQL 進階(七):動態查詢進階與 CLR/SQL 細節差異
承上篇 Find 動態查詢,改為擴充方法並支援 OR 條件,修正 Nullable 型別處理。 改良版 Find 擴充方法 Find(source, obj
Paint.NET 學習筆記(一):啟動流程與單一執行個體
原始碼結構:核心專案 Data\Effects\Paintdotnet\PdnLib\SystemLayer,啟動專案 Paintdotnet,入口 Start
Paint.NET 學習筆記(二):MainForm 初始化流程
程式進入 Application.Run(new MainForm(args)),MainForm 繼承 PdnBaseForm(修復 Form 透明度無法設
Paint.NET 學習筆記(三):視窗架構與熱鍵系統
Paint.NET 所有視窗繼承自 PdnBaseForm(實作 ISnapManagerHost),浮動視窗繼承 FloatingToolForm(實作 IS
Paint.NET 學習筆記(四):視窗吸附效果實作
Winamp、千千靜聽等播放器常見的「控制項吸附」效果,在 Paint.NET 中由 SnapManager、SnapObstacle、SnapDescript
NPOI 介紹:無需安裝 Office 的 .NET Excel 讀寫庫
什麼是 NPOI? NPOI 是 Java 庫 POI 的 .NET 移植版。POI 可在無 Office 環境下讀寫 Office 97-2003 格式。NP
LINQ to SQL 儲存程序回傳多結果集實作
LINQ to SQL 預設將儲存程序對應為 ISingleResult,僅支援單一結果集。若需多結果集,需手動修改生成代碼為 IMultipleResults
Finalizer 執行緒對物件生命週期的影響深度解析
.NET 物件銷毀過程涉及 GC 執行緒與 Finalizer 執行緒的協作。本文透過代碼實驗驗證 Finalizer 執行緒行為、WeakReference
SOA 架構下的分散式事務控制需求與應用場景
在 SOA 系統中,服務是基本功能單元,業務活動常跨越多個服務邊界,需協調多服務間資源操作,這屬於短暫運行服務協作範疇,事務即是核心解決方案。 一、 事務與
基於 DTC 的分散式事務管理模型(上):三大角色與事務提升機制
WCF 並非自行建構事務基礎設施,而是充分利用 Windows 現有事務架構。Windows 事務模型中有三大核心角色: 應用/服務/元件:事務的發起者、傳播
基於 DTC 的分散式事務管理模型(下):事務登記、兩階段提交與單階段優化
承上篇,當本地事務(LTM/KTM)提升為 DTC 管理的分散式事務後,DTC 成為本機所有資源管理器的管理者;跨機器呼叫時,雙方 DTC 透過協議協作。所有參
深入解析 System.Transactions 事務機制(上):核心類型與可提交事務
在 .NET 1.x 時代,開發人員主要透過 ADO.NET 針對單一資料庫連線實作本地事務。隨著 .NET 2.0 的釋出,微軟引入了全新的事務程式設計模型—