NHibernate實戰(16):深入掌握存儲過程的新增與更新操作
前言 承接上一篇關於刪除操作存儲過程的介紹,本文將詳細探討在 NHibernate 中如何使用存儲過程實現實體對象的新增與更新。所有內容均源自實際專案經驗,涵蓋
NHibernate 預存程序進階應用(下):sql-query 靈活查詢、標量/實體/參數多樣化
sql-query 三大進階場景 1. 回傳標量值 預存程序: CREATE PROCEDURE scalarSProcs @number int AS SE
NHibernate 代碼生成工具實戰:MyGeneration 從資料庫反向生成實體與映射
資料庫驅動開發 (DbDD) 與代碼生成 適用場景:遺留系統資料庫既有、或架構早期定型不可變。流程:資料庫 → 代碼生成器 → 實體/映射 → 應用程式。
NHibernate SchemaExport 入門:領域驅動設計下的資料庫架構自動生成與更新
領域驅動設計 (DDD) 流程 先設計物件模型 → 寫持久化類與映射 → 用 SchemaExport 生成資料庫架構。模型變更只需改代碼再重跑工具,無需手動改
NHibernate SchemaExport 進階:表約束、預存程序與視圖自動化部署
表與約束生成控制 透過映射檔屬性精確控制 DDL: 需求映射寫法生成 SQL 片段 非空 + 長度<property name=Name not-nul
NHibernate 物件狀態全圖譜:瞬時、持久、脫管三態轉換與版本控制
三大物件狀態 狀態定義識別碼資料庫記錄Session 關聯 瞬時新建未關聯 Session空(自動生成時)無無 持久已儲存或已載入已賦值有當前 Session
NHibernate 一級快取全解析:Session 緩存機制、Get/Load 差異與程式化管理
一級快取本質 ISession 快取屬交易級、內建、生命週期隨 Session。操作資料時優先查快取,無則查庫並存入。 行為驗證 同一 Session 重複
NHibernate 二級快取入門(上):架構、提供者與配置實作
二級快取架構 由 ISessionFactory 建立,所有 ISession 共享。查詢順序:一級快取 → 二級快取 → 資料庫。內建 HashtableCa
NHibernate 二級快取深度探索(下):查詢快取、快取管理與同步策略
二級快取更新/刪除策略 啟用讀寫策略時,修改資料並提交,NHibernate 執行 UPDATE 並同步更新二級快取。第二次讀取同一資料,從二級快取取得已更新的
Unity 根基:從 ObjectBuilder 談起
ObjectBuilder 定位 ObjectBuilder 是可擴展 Application Block,也是 Unity 基石。常見描述有「DI 工具」、「
Unity 簡介:輕量級、可擴展的依賴注入容器
背景 Unity 採 ObjectBuilder 為底層框架。團隊慣例延期(Enterprise Library 最明顯),原訂 4/7 釋出再延。因 CTP
Unity 快速入門:三步驟掌握容器建立、註冊與解析
文檔新模式 Patterns & Practices 團隊採「釋出產品同步發布文檔至 MSDN」模式,可先線上閱讀再決定安裝。 最簡範例:型別映射基本
Unity 類型映射全解析:介面、基類與命名鍵三種索引方式
Unity 三大核心使用場景 建立類型映射 單例模式 依賴注入 容器索引鍵設計 Unity 容器內單元以「鍵→值」對應,鍵為介面/基類,值為具體類別。兩種
Unity 實作單例模式:容器管理生命週期,類別保持純粹
為何交給容器管理單例 傳統寫法在類別內實作 GetInstance() 判斷 null 建立實例,將生命週期管理與業務邏輯耦合,違反 SRP(單一職責原則)。U
Unity 依賴注入基礎(上):建構子注入與自動/標註模式
依賴注入與控制反轉 DI (Dependency Injection) ≠ IoC (Inversion of Control)。推薦閱讀 Martin Fow
Unity 依賴注入進階(下):屬性注入、方法注入與 Fluent Interface
Fluent Interface(流暢介面) 上篇使用的鏈式呼叫風格即為 Fluent Interface(Martin Fowler 提出),如: 閱讀起來
RESTful WCF 實作檔案上傳下載:以 Raw/Stream 傳輸二進位資料
核心觀念:Raw 傳輸支援任意格式 WCF REST 不僅支援 XML/JSON,還支援 原生資料。當回傳值或參數為 System.IO.Stream(或衍生類
Microsoft Chart 控制項資料綁定完全指南:從基礎到交叉表
資料來源四大途徑 設計介面 Series.Points 手動添加 設計介面綁定資料源 後台代碼動態添加(Points.AddXY、AddY 等) 後台代碼設定