Are you confused about the layered architecture or want to improve the existing layered architecture model? Let's take a look at the layered architecture diagram of these or coders, it is helpful to myself and has opened the fog of layered architecture. Note: An article in the legendary string brother is referenced in a piece.
1.
01. user interface is the UI Layer. As the interface for data input and display, this layer is an effective way to interact with users, so it plays a vital role. The first impression is the UI Layer, which must be considered based on different technologies or requirements during design. Generally, the UI can be divided into B/S UI, C/S UI, and Web Service. Here is our ASP. NET project.
02. webmodelcommon: This layer serves as the middle layer of UI and domain logic. It serves as a bridge, filtering, filtering, and verification. It mainly includes two projects. webhelper mainly provides some common operations for the UI. WebLogic converts, filters, verifies, and filters UI and domain logic data.
03. business logic: domain model (data model layer) is always the core of an application and requires a lot of effort to perform OOAD-based analysis and design) best practices are designed and developed in accordance with OOP.
04. Framework: It mainly includes basic or common functions such as data access framework, general permission framework, exception and log processing framework, IOC framework, and AOP framework.
05. SOA: This layer is not mandatory and can be selected based on the specific circumstances of the project. If the business is complicated and there are many interactive projects, SOA can reduce our burden; if the business is relatively simple, you can directly call or use Web Service/remoting/WCF as the communication framework. In the process of implementing SOA, you can use WCF + WF to build a small and lightweight SOA framework, or use software such as BizTalk.
06. Reference: This section describes third-party frameworks and component projects. These files are stored in this directory in different categories.
07. Solution items: project specifications, processes, and important documents.
08. Test: Some information required for the test, such as the test version and test document, is placed here.
09. Publish: this folder mainly contains the released version.
2.
Description: The solution structure of an instance in my comprehensive analysis of WCF. The basic idea is: first module (here refers to the coarse-grained module, which can be regarded as a subsystem) (two business modules: products, orders, a non-business module: Infrastructure), post-level. Products. businessEntity: defines the business entity type provided. In general, the business entity and data contract are different. For the sake of simplicity, we not only combine the two, but also use the business entity as ASP. NET
Use of the model of MVC; products. dataaccess: data access layer, where access to the database is simply provided. This project has a project reference for products. businesstity; products. businesscomponent: it can also be called the business logic layer. The real business logic is implemented here. This project has project reference for products. businessEntity and products. dataaccess; products. Service. Interface: the contract interface of the WCF Service is defined here. This project has a project reference for products. businessEntity;
Products. Service: defines the service that implements the Preceding Contract interface. This project has. service. interface, products. businessEntity and products. businesscomponent project reference; Products: provides basic functions for this module, including not only service calls, but also some necessary logical processing. This project has project reference for products. businessEntity, products. Service. interface, and products. interface. Products. Interface: the service interface provided by the module to other modules. This project has a project reference for products. businessEntity
3.
TIPS:
1. The "solution folder" helps you plan the project structure well.
2. Add numbers 1, 2, 3, 4... to the solution folder to sort projects in the order you want
3. company name, project name, package name, and schema name naming conventions make your project structure clearer.
4. The number of sub-items should be based on the project's specific situation and architecture design. If the compilation speed is too slow, it will be troublesome to use.
4.
5.
A hierarchical demonstration project developed by Microsoft Based on the DDD architecture, nlayerappv2:
Download URL: http://microsoftnlayerapp.codeplex.com/workitem/6687
6.
Download URL: http://orchard.codeplex.com/
7.. Net's famous CMS, dotnetnuke (dnn ):
8. Entry level in architectural hierarchy
9.
10.