144 messaggi dal 26 febbraio 2007
Ciao,


Voglio cancellare la cache dell'applicazione dopo aver aggiornato un elemento del mio dominio.

In tal caso, sollevo un evento NodeEndPointReferenceChangedEvent dal domain layer.

La cache è gestita nel services layer.

Non sono sicuro di dove colloco NodeEndPointReferenceChangedHandler, che sarà responsabile della cattura dell'evento e dell'invocazione del servizio per cancellare la cache.


Va bene se divido gli handlers in due livelli:
DomainHandles che gestirà gli eventi a livello di dominio
ServiceHandles che gestirà gli eventi a livello dell'applicazione (servizi cache)


L'altro punto è quando l'evento sarà sollevato? Nel mio caso della cache, preferisco sollevare l'evento dopo il commit della transazione. Ma in altri casi o nel Domain Handler preferisco gestire l'evento nella stessa transazione.
Quindi posso definire due diverse interfacce per gestire questo caso (ad esempio ITransactionNotification e ICommitedTransactionNotification) e nel layer infrastracture (nel mio caso EF Core perché utilizzo dot net core) lancerà gli eventi pre o post transazione a seconda dell'interfaccia che implementano.

Come vi sembra questa solutione?

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.