Question

Comment événement approvisionnement peut être combiné avec plusieurs types d'objets dictionnaire comme Country, Region, etc. Time Zone et dictionnaire types de modèle particulier de domaine comme les définitions de Budget ou Availability. Certains des objets dictionnaire devrait être possible de modifier dans l'interface utilisateur d'administration, mais d'autres non.

Par exemple, nous avons décidé que nous ne avons pas besoin UI d'administration pour les pays. Ainsi, on n'a pas besoin de mettre en œuvre les commandes AddCountry / RemoveCountry.

Dois-je générer un ensemble d'événements CountryAdded dire que je devrais persister des objets du dictionnaire comme flux d'événements? Est-ce que nous utilisons toujours la source de la vérité autre flux d'événements alors?


Dans le cas où je peux aller sans flux d'événements pour le dictionnaire des objets, comment vous allez résoudre ce problème:

  

Liste d'affichage des pays avec la   nombre d'utilisateurs dans chaque pays.

Dans ce cas je besoin d'une représentation des objets Country dans le modèle de lecture avec écouteur pour l'événement UserAdded.

Merci.

Était-ce utile?

La solution

Si vous utilisez le sourcing des événements comme mécanisme de persistance, alors:

  • flux d'événements est la seule source de vérité (photos d'objets générés à partir de flux d'événements pourrait être utilisé pour améliorer les performances, mais ils ne sont que la technique).
  • Lorsque vous utilisez l'approvisionnement de l'événement, vous n'avez pas besoin de générer explicitement l'événement - juste publier les événements réels générés lors du traitement de la commande
  • .
  • si vous avez une liste prédéfinie de pays, qui ne changera jamais, il vous suffit de coder en dur et de référence par leurs codes de pays. Cependant, cela implique que le modèle de vue et l'interface utilisateur sait à ce sujet et les pays ne vont pas changer.

BTW je recommande poster des questions comme celles-ci à groupe DDD / CQRS . Il est la plus communauté très active sur les questions de CQRS / DDD / ES.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top