Ho implementato una parte del modello CQRS usando S # arp Architecture in questo modo: public class MyCommand { public CustomerId { get; set; } // some other fields } public class MyCommandHandler<MyCommand> : ICommandHandler<MyCommand, CommandResult> { Handle(MyCommand command) { // some code for saving Customer entity return CommandResult.Success; } …
Ho letto di Domain Driven Design per quasi due anni e ho introdotto con cautela alcuni concetti nel mio lavoro quotidiano o almeno facendo piani su come le cose che faccio regolarmente potrebbero essere fatte all'interno di un Domain Driven Design. Una conclusione a cui sto iniziando a giungere in …
Sto fondamentalmente cercando di avvolgere la mia testa attorno al concetto di CQRS e concetti correlati. Sebbene CQRS non includa necessariamente la messaggistica e il sourcing di eventi, sembra essere una buona combinazione (come si può vedere con molti esempi / blogposts che combinano questi concetti) Dato un caso d'uso …
A quanto ho capito, l'idea alla base di CQRS è avere 2 diversi modelli di dati per la gestione di comandi e query. Questi sono chiamati "modello di scrittura" e "modello di lettura". Consideriamo un esempio del clone dell'applicazione Twitter. Ecco i comandi: Gli utenti possono registrarsi. CreateUserCommand(string username)emetteUserCreatedEvent Gli …
Voglio implementare la mia prima applicazione usando il modello CQRS insieme a Event Sourcing. Mi chiedo come gestire correttamente la creazione di radici aggregate. Diciamo che qualcuno invia il comando CreateItem. Come dovrebbe essere gestito? Dove deve essere archiviato l'evento ItemCreated? Come primo evento di un nuovo oggetto? O dovrei …
Si dice che in CQRS è facile correggere un bug, basta ridistribuire e quindi riprodurre gli eventi. Ma cosa succederebbe se uno degli eventi dovesse causare un sistema esterno non sotto il tuo controllo per "spedire un articolo" al cliente se riproducessi semplicemente gli eventi l'articolo verrebbe spedito due volte. …
Come dovremmo creare nuove radici aggregate nell'architettura cqrs? In questo esempio, voglio creare un nuovo AR2 radice aggregato che contenga il riferimento al primo AR1. Sto creando AR2 usando il metodo AR1 come punto di partenza. Finora vedo alcune opzioni: All'interno del metodo in AR1 createAr2RootOpt1ho potuto chiamare new AR2()e …
Recentemente ho refactoring un metodo che era sia un comando che un metodo di query. Dopo averlo separato in un metodo a un comando e un metodo di query, ho scoperto che ora ci sono più posizioni nel codice in cui sto chiamando il comando per ottenere il valore dalla …
Ho un'applicazione ASP.NET MVC, che utilizza un servizio di query per ottenere dati e un servizio di comando per inviare comandi. La mia domanda riguarda la parte di comando. Se arriva una richiesta, il servizio comandi utilizza un dispatcher di comandi che indirizzerà il comando al gestore dei comandi designato. …
Sembra esserci un ampio consenso nella comunità OOP sul fatto che il costruttore della classe non dovrebbe lasciare un oggetto parzialmente o addirittura completamente non inizializzato. Cosa intendo per "inizializzazione"? In parole povere, il processo atomico che porta un oggetto appena creato in uno stato in cui si trovano tutti …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.