The first time to write a blog a little excitement, nonsense not much to say first:
- 01_client: A project that stores UI-related items, such as ASP. NET MVC or the associated web model and view model.
- 02_hosting: Store service-related items, either direct service,remoting service,web SERVICE,WCF service or Web API service.
- 03_domain: All entities related to business logic and operations (design classes and relationships between classes based on OO ideas).
- 04_infrastructure: Non-business functional Framework (COMMON,AOP, Ioc,logging,encryption,scheduler).
- 05_database: Database project (contains all database scripts for easy development, deployment, and maintenance).
- 06_tests: All test items (data access test, framework test, Business logic test, service test, and view Model test).
- 07_referencelibs: Project-related external references.
- 08_tools: Simple tools such as nunit for easy development, testing, and deployment.
- 09_documents: Store project related documents, data dictionary, interface API, etc.
In the business Domain layer is divided into Model,repository,service three layer, each layer before using interface to interact with the IOC function in the spring.net to dynamically inject the interface implementation class, so as to achieve the decoupling between the layers.
Model layer: Use the Entity Framework framework to define database context and table correspondence between different databases, and define business entity classes
Repository layer: Through the call model layer interface to achieve a variety of business entity classes of additions and deletions and other functions.
Service layer: The main processing business logic, and call the Repository layer interface to manipulate the data
DDD-based. NET project Setup