Edition 0 Updated to asp. Net core 0


Structure aggregates in a custom .NET Standard library



Yüklə 11,82 Mb.
Pdf görüntüsü
səhifə180/288
tarix12.07.2023
ölçüsü11,82 Mb.
#136458
1   ...   176   177   178   179   180   181   182   183   ...   288
Structure aggregates in a custom .NET Standard library 
An aggregate refers to a cluster of domain objects grouped together to match transactional 
consistency. Those objects could be instances of entities (one of which is the aggregate root or root 
entity) plus any additional value objects. 
Transactional consistency means that an aggregate is guaranteed to be consistent and up to date at 
the end of a business action. For example, the order aggregate from the eShopOnContainers ordering 
microservice domain model is composed as shown in Figure 7-11. 


206 
CHAPTER 6 | Tackle Business Complexity in a Microservice with DDD and CQRS Patterns 
Figure 7-11. The order aggregate in Visual Studio solution 
If you open any of the files in an aggregate folder, you can see how it is marked as either a custom 
base class or interface, like entity or value object, as implemented in the 
SeedWork
 folder. 
Implement domain entities as POCO classes 
You implement a domain model in .NET by creating POCO classes that implement your domain 
entities. In the following example, the Order class is defined as an entity and also as an aggregate 
root. Because the Order class derives from the Entity base class, it can reuse common code related to 
entities. Bear in mind that these base classes and interfaces are defined by you in the domain model 
project, so it is your code, not infrastructure code from an ORM like EF. 
// COMPATIBLE WITH ENTITY FRAMEWORK CORE 5.0
// Entity is a custom base class with the ID
public
class
Order : Entity, IAggregateRoot 

private
DateTime _orderDate; 
public
Address Address { 
get

private
set
; } 
private
int
? _buyerId; 

Yüklə 11,82 Mb.

Dostları ilə paylaş:
1   ...   176   177   178   179   180   181   182   183   ...   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