In accordance with the concept of domain-driven design, we build a framework for the development of the solution as follows:
* The solution is being transformed and will be perfected as the process of transformation progresses.
solution directory |
corresponding domain design layer |
|
infrastructure |
infrastructure layer |
development of the underlying class library |
Core |
  |
|
Core.Caching.Redis |
  |
redis distributed cache implementation |
Core.Data.Entity |
  |
entityframework Encapsulation class Library |
PlugIns |
  |
mainly for external product packaging SDK, the solution is not |
domain |
Business Domain layer |
Business domain model and business logic |
Model |
  |
Business domain entity |
model.mapping |
  |
database mapping for business domain entities |
repoistory |
  |
Business domain Warehousing implementation |
Repoistory.interface |
  |
Business Domain Warehousing interface |
Service |
  |
Business domain Logic implementation |
Service.interface |
  |
Business domain Logical interface |
appservice |
app service layer |
soa mode, service to upper layer |
Appservice |
  |
externally available application layer services |
Appservice.interface |
  |
interfaces for external application layer services |
presentation |
|
Components and controls encapsulation for Windows/web applications |
Web.library |
  |
web site Class library and controls |
Web.Controls |
  |
web control |
client |
client |
client-specific implementation |
areas |
  |
client areas |
Common |
  |
common area |
Dataware | TD style= "PADDING-LEFT:11PX; padding-right:11px; Border-top:none; Border-left:none; Border-bottom:solid #bdd6ee 0.5pt; Border-right:solid #bdd6ee 0.5pt "> 
Data Warehouse area |
Samplewebapp |
  |
|
Staticwebapp |
  |
static resource site |
ConsoleApp |
  |
console app, primarily a call to background tasks. Similar to the original Windows service |
|
|
|
Focus on the areas part of the description: We will be the client's entire application according to the Business module division, can be divided into common areas, portal area, Data Warehouse area, workflow and form area, CMS area and so on. In order to write fewer words, I only list the portal and the Data Warehouse area in the table. So that each client application in the establishment, only need to reference the relevant area, not necessarily all the areas are referenced, this is called plug-in mode. After careful study of the Applicationpart, see if you can change the area to Applicationpart.
Iii.. NET Core Development framework Project solutions for the cloud