亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

MVC實用架構(gòu)設計(〇)——總體設計

系統(tǒng) 2078 0

系列導航

  1. MVC實用架構(gòu)設計(〇)——總體設計
  2. MVC實用架構(gòu)設計(一)—— 項目結(jié)構(gòu)搭建
  3. MVC實用架構(gòu)設計(二)—— 使用MEF應用IOC
  4. MVC實用架構(gòu)設計(三)—— EF-Code First(1):Repository,UnitOfWork,DbContext
  5. MVC實用架構(gòu)設計(三)—— EF-Code First(2):實體映射、數(shù)據(jù)遷移,重構(gòu)
  6. MVC實用架構(gòu)設計(三)—— EF-Code First(3):使用T4模板生成相似代碼
  7. MVC實用架構(gòu)設計(三)—— EF-Code First(4):數(shù)據(jù)查詢
  8. MVC實用架構(gòu)設計(三)—— EF-Code First(5):二級緩存
  9. MVC實體架構(gòu)設計(三)—— EF-Code First(6):數(shù)據(jù)更新
  10. 未完待續(xù)。。。

〇、目錄

一、 前言

二、 結(jié)構(gòu)圖

三、 結(jié)構(gòu)說明

一、前言

  一直以來都想寫這個系列,但基于各種理由(主要是懶惰),遲遲沒有動手。今天,趁著周末的空檔,終于把系列的目錄公布出來了,算是開個頭,也給自己一個堅持寫博客的理由吧。

  這個架構(gòu)是從我近期在做的一個項目中剝離出來的,這個項目由我從0開始一手搭建,在整個過程中不斷學習(在博客園中參考了很多大牛的作品)與思考中不斷完善,項目的結(jié)構(gòu)也從一個普通的類PetShop三層結(jié)構(gòu)演變成了現(xiàn)在這樣,一切以實用為目的,所以項目的改造過程中并不太嚴格遵守傳統(tǒng)三層的定義,這個在下篇《項目結(jié)構(gòu)搭建》及以后的系列文章中都會提及到,也會與傳統(tǒng)三層結(jié)構(gòu)進行對比。

  寫這個系列的目的之一也是想把當前項目的架構(gòu)抽象出來,以希望得到高手大牛們的指點,指出不足之處,以求發(fā)展改進。

  本系列使用的開發(fā)環(huán)境為: Windows 7 SP1、 Visual Studio 2012 (Update2)、TFS2012 (微軟TFS云服務)、SQL Server 2008+,并使用 Resharper 7.1 進行代碼優(yōu)化。

二、結(jié)構(gòu)圖

MVC實用架構(gòu)設計(〇)——總體設計 MVC實用架構(gòu)設計(〇)——總體設計

  上圖是本構(gòu)架的設計圖,縱向中間一列為架構(gòu)主體部分,兩邊的小列為周邊的依賴項,如果橫向有交集,則說明主體部分對周邊存在依賴。比如GMF.Demo.Core.Data依賴于Domain Models與EntityFramework,但GMf.Demo.Site.Web與GMF.Demo.Site對Entityframework不存在依賴。同樣,Log模塊也僅為GMF.Demo.Site.Web服務等等,這些在下面的結(jié)構(gòu)說明中也會詳加說明。

三、結(jié)構(gòu)說明

  1. Infrastructure(基礎設施層):提供系統(tǒng)中與業(yè)務無關的基礎設施功功能
    1. GMF.Component.Tools:工具組件,提供通用輔助操作功能,擴展方法,異常定義,日志記錄定義與實現(xiàn)等功能
    2. GMF.Component.Data:數(shù)據(jù)組件,提供 與業(yè)務無關的 EF數(shù)據(jù)上下文,單元操作,倉儲操作,EF二級緩存等功能的定義與實現(xiàn)
  2. Core (業(yè)務核心層):提供與業(yè)務實體密切相關的業(yè)務功能
    1. GMF.Demo.Core.Models:業(yè)務實體模型,定義用于系統(tǒng)核心業(yè)務實現(xiàn)的數(shù)據(jù)模型的定義
    2. GMF.Demo.Core.Data:業(yè)務數(shù)據(jù)訪問定義與實現(xiàn):提供與 業(yè)務相關的 數(shù)據(jù)訪問功能的實體映射,數(shù)據(jù)遷移,倉儲操作的定義與實現(xiàn)
    3. GMF.Demo.Core:業(yè)務核心功能定義與實現(xiàn):提交 與客戶端(網(wǎng)站,桌面端,移動端)無關的 業(yè)務邏輯的實現(xiàn),業(yè)務核心層主要特征如下:
      1. 此層是業(yè)務邏輯處理的核心,數(shù)據(jù)載體為業(yè)務實體
      2. 此層所有類為抽象類,需要在相應的客戶端(網(wǎng)站,桌面端,移動端)進行繼承后才能被展現(xiàn)層調(diào)用
      3. 此層要做到客戶端(網(wǎng)站、桌面端、移動端)狀態(tài)(如網(wǎng)站的Cookie,Session等)無關性,所有客戶端特有的業(yè)務都要在相應的派生層中進行處理,轉(zhuǎn)換為狀態(tài)無關后再調(diào)用此層進行運算
      4. 對于不同客戶端(網(wǎng)站、桌面端、移動端)的數(shù)據(jù),只需要轉(zhuǎn)換為業(yè)務實體即可調(diào)用此層代碼進行運算,解決相同業(yè)務在不同客戶端代碼重復的問題
  3. Application (站點應用層)
    1. GMF.Demo.Site.Models:網(wǎng)站業(yè)務視圖模型:定義用于網(wǎng)站業(yè)務實現(xiàn)的視圖模型的定義
    2. GMF.Demo.Site:網(wǎng)站業(yè)務實現(xiàn),此項目 繼承于 GMF.Demo.Core,主要職能如下:
      1. 對業(yè)務執(zhí)行權(quán)限進行檢查
      2. 負責把從網(wǎng)站接收的業(yè)務視圖實體轉(zhuǎn)換為核心業(yè)務模型,傳給業(yè)務核心層進行業(yè)務處理
      3. 處理與Http密切相關的數(shù)據(jù)(Session、Cookie等),處理成與Http狀態(tài)無關后再交由核心層進行處理
  4. Presentation (展現(xiàn)層)
    1. GMF.Demo.Client.Consoles:業(yè)務控制臺,可對功能代碼段,核心業(yè)務等功能進行調(diào)用測試。
    2. GMF.Demo.Site.Web:網(wǎng)站UI展現(xiàn)
      1. 對Action執(zhí)行權(quán)限進行檢查
      2. 接收用戶輸入并轉(zhuǎn)交給站點業(yè)務層進行處理
      3. 記錄功能操作的日志記錄與異常日志

MVC實用架構(gòu)設計(〇)——總體設計


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 午夜一级毛片免费视频 | 淫视频网站 | 中国一级毛片欧美一级毛片 | 欧美福利影院 | 国产婷婷色综合成人精品 | 久色中文| 亚洲国产精品视频 | 成人亚洲国产 | 老妇毛片久久久久久久久 | 亚洲成人免费在线视频 | 日日夜夜免费精品视频 | 亚洲欧美日韩激情在线观看 | 久久免费精品 | 日本成人中文字幕 | 免费99视频 | 成人精品视频 | 狠狠丁香激情久久综合 | 人人做人人爽久久久精品 | 曰鲁夜鲁鲁狠狠综合 | 国产精品高清视亚洲一区二区 | 欧美精品亚洲精品 | 奇米影音| 在线色资源 | 理论片毛片 | 一级毛片黄色片 | 澳门一级特黄录像免费播黄 | 精品精品国产自在香蕉网 | h片免费网站 | 免费观看欧美精品成人毛片能看的 | 很很鲁在线视频播放影院 | 亚洲欧美色鬼久久综合 | 日韩在线观看视频网站 | 国产精品一区二区免费 | 老头老太做爰xxx视频 | 国产欧美亚洲精品一区 | 男人的天堂欧美精品色偷偷 | 精品午夜寂寞影院在线观看 | 欧美激情中文字幕一区二区 | 99精品国产兔费观看66 | 九九99久久精品午夜剧场免费 | 久久永久免费中文字幕 |