上一篇介紹了工作單元層超類型的封裝演化過程,本文將介紹對Entity Framework映射層超類型的封裝。 使用Entity Framework一般需要映射三種類型的對象,即實體、聚合、值對象。 聚合與實體映射的主要區別是:聚合映射單屬性標識Id,並需要映射樂觀離線鎖 ...
上一篇介紹了DDD聚合以及與並發相關的各種鎖機制,本文將介紹另一個核心元素 工作單元,它是實現倉儲的基礎。 什么是工作單元 維護受業務事務影響的對象列表,並協調變化的寫入和並發問題的解決。 這是 企業應用架構模式 中給出的定義,不過看上去有點抽象。它大概的意思是說,對多個操作進行打包,記錄對象上的所有變化,並在最后提交時一次性將所有變化通過系統事務寫入數據庫。 當然,工作單元不一定是針對數據庫的 ...
2014-12-06 21:10 6 4399 推薦指數:
上一篇介紹了工作單元層超類型的封裝演化過程,本文將介紹對Entity Framework映射層超類型的封裝。 使用Entity Framework一般需要映射三種類型的對象,即實體、聚合、值對象。 聚合與實體映射的主要區別是:聚合映射單屬性標識Id,並需要映射樂觀離線鎖 ...
上一篇介紹了值對象的基本概念,得到了一些朋友的支持,另外也有一些朋友提出了不同意見。這其實是很自然的事情,設計本來就充滿了各種可能性,沒有絕對正確的做法,只有更好的實踐。但是設計與實踐的好與壞,對 ...
前一篇介紹了倉儲的基本概念,並談了我對倉儲的一些認識,本文將實現倉儲的基本功能。 倉儲代表聚合在內存中的集合,所以倉儲的接口需要模擬得像一個集合。倉儲中有很多操作都是可以通用的,可以把這部分 ...
敏捷時代的來臨,迫使微軟.Net技術也在向敏捷方向發展。近幾年,.Net在數據訪問、Web、測試等多個領域大刀闊斧的進行改革,新技術不斷涌現。一方面這是值得慶幸的,讓.Net程序員在開發復雜項目有了更多的選擇,一改往日只能拖控件綁定數據的局面。另一方面,程序員需要大量的學習,並且需要依賴更多 ...
上文介紹了我選擇EasyUi作為前端框架的原因,並發放了最新Demo。本文將對這個Demo進行一些介紹,以方便你能夠順利運行起來。 這個Demo運行起來以后,是EasyUi的一個簡單CRUD操作,數據庫中也只有一個簡單的表,整個操作不帶任何業務邏輯。 看到這里,不少朋友難免感到失望 ...
之前說過,.Net Framework為所有.Net程序員提供底層支持,第三方開源框架建立在.Net Framework的基礎上,專門解決某些特定問題,而應用程序框架則建立在.Net Framework和第三方框架的基礎上,為項目開發的方方面面保駕護航。它們的作用雖然都是幫助程序員更好的建立 ...
分層架構根據相關職責將應用程序模塊切割為多個層次,那么應用程序框架本身還要不要進行層次划分?隨着對應用程序框架的理解加深,以及項目復雜度的提升,為應用程序框架分層就顯得很有必要,它將影響你如何創建VS解決方案。 在剛開始建立應用程序框架時,你首先會想到的是把技術方面的東西抽取出來,放到 ...
本文將介紹表現層及ASP.NET MVC的一些要點,特別是ASP.NET MVC的一些抽象和封裝技巧,如果你對MVC還不了解,可以參考《ASP.NET MVC4 高級編程》,作者Jon Galloway等,這本書由ASP.NET MVC團隊成員編寫,相當不錯。 表現層的職責 表現層 ...