掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
下面的架構(gòu)設(shè)計(jì)是公司項(xiàng)目中實(shí)際使用的,希望大家不吝指教,溝通改進(jìn)。

架構(gòu)設(shè)計(jì)圖
架構(gòu)說(shuō)明
一個(gè)標(biāo)準(zhǔn)的三層架構(gòu)包含如下三個(gè)部分:
展示層,負(fù)責(zé)系統(tǒng)與客戶的交互
業(yè)務(wù)邏輯層,負(fù)責(zé)處理系統(tǒng)的業(yè)務(wù)
數(shù)據(jù)訪問(wèn)層,負(fù)責(zé)處理數(shù)據(jù),與不同的數(shù)據(jù)庫(kù)打交道
我們?cè)诖巳龑蛹軜?gòu)的基礎(chǔ)上進(jìn)行一些小的擴(kuò)展,增加了一個(gè)服務(wù)層,使其方便與其他系統(tǒng)進(jìn)行數(shù)據(jù)交互和業(yè)務(wù)集成。
公共組件則是抽象了系統(tǒng)中可以共用和重用的部分。
組件設(shè)計(jì)圖
組件說(shuō)明
App——頁(yè)面展示
采用MVC 3.0框架,使用Jquery腳本庫(kù),控件選用Easyui。
BLL——業(yè)務(wù)邏輯
業(yè)務(wù)邏輯的操作,包括業(yè)務(wù)處理,事務(wù),日志。
DAL——數(shù)據(jù)訪問(wèn)
數(shù)據(jù)庫(kù)訪問(wèn)的操作,數(shù)據(jù)實(shí)體,業(yè)務(wù)實(shí)體,數(shù)據(jù)校驗(yàn),使用Entity Framework。
IBLL——業(yè)務(wù)接口
業(yè)務(wù)邏輯層的方法對(duì)外暴露的接口和服務(wù)契約。
Common——公共組件
整個(gè)應(yīng)用程序使用的公共輔助方法。
ModelingProject——模型設(shè)計(jì)
在此設(shè)計(jì)項(xiàng)目的圖例,如:架構(gòu)圖。
WcfHost——服務(wù)宿主
為對(duì)外的服務(wù)提供宿主,使用微軟WCF技術(shù),采用HTTPS通訊協(xié)議。
WFActivitys——工作流活動(dòng)層
定義了工作流的活動(dòng),使用微軟WF技術(shù)。
WFDesigner——工作流設(shè)計(jì)器
可以讓實(shí)施人員自由配置工作流的設(shè)計(jì)器,使用微軟WPF技術(shù)。
以上是在架構(gòu)圖的框架下設(shè)計(jì)的9個(gè)組件,讓每個(gè)層職責(zé)獨(dú)立,松耦合,適合團(tuán)隊(duì)開(kāi)發(fā)。
在架構(gòu)圖中我們看到有"數(shù)據(jù)實(shí)體"、"業(yè)務(wù)實(shí)體"和"頁(yè)面模型",他們之間的關(guān)系呢?數(shù)據(jù)實(shí)體是數(shù)據(jù)庫(kù)表和表關(guān)系的映射,是Entity Framework自動(dòng)生成的;但在不同的業(yè)務(wù)領(lǐng)域,數(shù)據(jù)實(shí)體無(wú)法滿足需求,就需要我們?cè)跀?shù)據(jù)實(shí)體的基礎(chǔ)上擴(kuò)展或者自定義,于是就有了業(yè)務(wù)實(shí)體的概念;務(wù)實(shí)體經(jīng)過(guò)業(yè)務(wù)處理后,需要展示給客戶的模型就叫做頁(yè)面模型,頁(yè)面模型是一個(gè)頁(yè)面動(dòng)態(tài)數(shù)據(jù)的載體,每個(gè)頁(yè)面都對(duì)應(yīng)著自己的頁(yè)面模型。如果我們只是做一個(gè)單表的增刪改查,那么"數(shù)據(jù)實(shí)體"、"業(yè)務(wù)實(shí)體"和"頁(yè)面模型"是一樣的,但在復(fù)雜業(yè)務(wù)中,三者就有差別了。
"數(shù)據(jù)實(shí)體"在DAL層中,是Entity Framework自動(dòng)生成的實(shí)體;
"業(yè)務(wù)實(shí)體"也在DAL層中,是基于"數(shù)據(jù)實(shí)體"進(jìn)行擴(kuò)展的實(shí)體
"頁(yè)面模型"則比較復(fù)雜,簡(jiǎn)單的頁(yè)面模型,可以直接使用業(yè)務(wù)實(shí)體,復(fù)雜的頁(yè)面模型則需要自定義,放在了Modles文件夾下。
此架構(gòu)實(shí)現(xiàn)的下載地址http://files.cnblogs.com/langben/www.langben.com.zip

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流