Edition 0 Updated to asp. Net core 0



Yüklə 11,82 Mb.
Pdf görüntüsü
səhifə172/288
tarix12.07.2023
ölçüsü11,82 Mb.
#136458
1   ...   168   169   170   171   172   173   174   175   ...   288
NET-Microservices-Architecture-for-Containerized-NET-Applications

The application layer 
Moving on to the application layer, we can again cite Eric Evans’s book 
Domain Driven Design

Application Layer:
Defines the jobs the software is supposed to do and directs the expressive domain 
objects to work out problems. The tasks this layer is responsible for are meaningful to the business or 
necessary for interaction with the application layers of other systems. This layer is kept thin. It does 
not contain business rules or knowledge, but only coordinates tasks and delegates work to 
collaborations of domain objects in the next layer down. It does not have state reflecting the business 
situation, but it can have state that reflects the progress of a task for the user or the program. 
A microservice’s application layer in .NET is commonly coded as an ASP.NET Core Web API project. 
The project implements the microservice’s interaction, remote network access, and the external Web 
APIs used from the UI or client apps. It includes queries if using a CQRS approach, commands 
accepted by the microservice, and even the event-driven communication between microservices 
(integration events). The ASP.NET Core Web API that represents the application layer must not contain 
business rules or domain knowledge (especially domain rules for transactions or updates); these 
should be owned by the domain model class library. The application layer must only coordinate tasks 
and must not hold or define any domain state (domain model). It delegates the execution of business 
rules to the domain model classes themselves (aggregate roots and domain entities), which will 
ultimately update the data within those domain entities. 


198 
CHAPTER 6 | Tackle Business Complexity in a Microservice with DDD and CQRS Patterns 
Basically, the application logic is where you implement all use cases that depend on a given front end. 
For example, the implementation related to a Web API service. 
The goal is that the domain logic in the domain model layer, its invariants, the data model, and 
related business rules must be completely independent from the presentation and application layers. 
Most of all, the domain model layer must not directly depend on any infrastructure framework. 

Yüklə 11,82 Mb.

Dostları ilə paylaş:
1   ...   168   169   170   171   172   173   174   175   ...   288




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin