$mermaidjs
Clean Architecture Demo
Loading...
Searching...
No Matches
TaskManagement.Domain.Events.DomainEvent Class Referenceabstract

DomainEvent es una clase base abstracta para todos los eventos del dominio en el sistema. More...

Inheritance diagram for TaskManagement.Domain.Events.DomainEvent:
Collaboration diagram for TaskManagement.Domain.Events.DomainEvent:

Properties

Guid Id = Guid.NewGuid() [get]
 
DateTime OccurredOn = DateTime.UtcNow [get]
 

Detailed Description

DomainEvent es una clase base abstracta para todos los eventos del dominio en el sistema.

Rol en Clean Architecture:

  • Parte del core de la aplicación en la capa del dominio
  • Implementa eventos para arquitectura dirigida por eventos
  • Habilita acoplamiento laxo entre agregados del dominio y servicios de aplicación
  • Captura sucesos del negocio importantes que ocurrieron en el dominio
  • Permite que múltiples servicios reaccionen a cambios del dominio sin acoplamiento directo

Eventos del dominio en esta demo:

  • TaskCreatedEvent: Se dispara cuando se crea una nueva tarea
  • TaskCompletedEvent: Se dispara cuando una tarea se marca como completada
  • TaskAssignedEvent: Se dispara cuando una tarea se asigna a un usuario
  • TaskPriorityChangedEvent: Se dispara cuando se cambia prioridad de tarea

Beneficios:

  • Desacopla lógica del dominio de preocupaciones de infraestructura
  • Habilita efectos secundarios —notificaciones, correos— sin modificar entidades del dominio
  • Proporciona trazas de auditoría de actividades del dominio
  • Soporta comunicación entre agregados

Definition at line 44 of file DomainEvent.cs.

Property Documentation

◆ Id

Guid TaskManagement.Domain.Events.DomainEvent.Id = Guid.NewGuid()
get

Definition at line 46 of file DomainEvent.cs.

◆ OccurredOn

DateTime TaskManagement.Domain.Events.DomainEvent.OccurredOn = DateTime.UtcNow
get

Definition at line 47 of file DomainEvent.cs.


The documentation for this class was generated from the following file: