標籤:height caching ice windows ons plugins 模組 介面 分布式
按照領域驅動設計的思路,我們搭建開發架構的解決方案如下:
*該解決方案正在改造過程中,會隨著改造的過程逐步完善。
解決方案目錄 |
對應領域設計層 |
說明 |
Infrastructure |
基礎設施層 |
開發的底層類庫 |
Core |
|
包括緩衝、配置、日誌、常用工具、資料訪問等核心組件 |
Core.Caching.Redis |
|
Redis分布式緩衝的實現 |
Core.Data.Entity |
|
EntityFramework的封裝類庫 |
PlugIns |
|
主要針對外部產品的封裝SDK,解決方案中暫缺 |
Domain |
業務領域層 |
業務領域模型以及商務邏輯 |
Model |
|
業務領域實體 |
Model.Mapping |
|
業務領域實體的資料庫映射 |
Repoistory |
|
業務領域倉儲實現 |
Repoistory.Interface |
|
業務領域倉儲介面 |
Service |
|
業務領域邏輯實現 |
Service.Interface |
|
業務領域邏輯介面 |
AppService |
應用服務層 |
SOA方式,對上層提供服務 |
AppService |
|
對外提供的應用程式層服務 |
AppService.Interface |
|
對外應用程式層服務的介面 |
Presentation |
使用者介面表現層 |
針對Windows/Web應用的組件和控制項封裝 |
Web.Library |
|
Web網站類庫和控制項 |
Web.Controls |
|
Web控制項 |
Client |
用戶端 |
用戶端具體的實現 |
Areas |
|
用戶端的Areas |
Common |
|
公用地區 |
DataWare |
|
資料倉儲地區 |
SampleWebApp |
|
範例網站 |
StaticWebApp |
|
靜態資源網站 |
ConsoleApp |
|
控制台應用,主要是背景工作的調用。類似原先的Windows服務 |
| |
|
|
重點對Areas部分做下說明:我們將用戶端整個應用按照業務模組進行劃分,可以分為通用地區、門戶地區、資料倉儲地區、工作流程和表單區域、CMS地區等等。為了少寫些字,我在表格中只列出了門戶和資料倉儲地區。這樣各個用戶端應用在建立時,只需要引用相關地區即可,不一定把所有的地區都引用進來,這就是所謂的外掛程式方式。以後仔細研究下ApplicationPart的做法,看看能否將Area修改為ApplicationPart。
三、面向雲的.net core開發架構項目解決方案