ho una radice 'Ordine' aggregato, e ha un certo numero di metodi su di esso che ha fissato internamente il suo campo 'Stato':In CQRS, come posso comunicare un elenco di metodi consentiti su un aggregato all'interfaccia utente?
- Invia
- mettere in sospeso
- Take Off Attesa
- Conferma
- Annulla
- ecc
Le azioni disponibili dipendono dallo stato corrente dell'ordine (ad es. non può essere messo in attesa se è già in attesa). Il problema è che ho bisogno di fornire una query per dire all'interfaccia utente quali comandi sono disponibili in modo da poter nascondere le operazioni che altrimenti genererebbero uno InvalidOperationException
.
Come si esegue questa operazione con una violazione DRY minima?
+1 - d'accordo. non c'è molto altro da aggiungere - questo è praticamente come lo faresti –
Oh, è solo sexy! Grazie! –