سؤال

كيف يمكن دمج مصادر الأحداث مع عدة أنواع من كائنات القاموس مثل Country, Region, Time Zone وما إلى ذلك وأنواع القاموس من نموذج مجال معين مثل Budget أو Availability تعريفات. يجب أن يكون بعض كائنات القاموس ممكنة تحريرها في واجهة المستخدم الإسهالية ولكن بعضها لا.

على سبيل المثال ، قررنا أننا لا نحتاج إلى واجهة المستخدم للبلدان. وبالتالي نحن لا نحتاج إلى التنفيذ AddCountry/RemoveCountry الأوامر.

هل يجب أن أقوم بإنشاء مجموعة من CountryAdded الأحداث أي هل يجب أن أستمر في كائنات القاموس كدفق للأحداث؟ هل نستخدم مصدر الحقيقة من أي وقت مضى آخر ثم دفق الحدث؟


في حال كان بإمكاني الذهاب بدون دفق حدث لكائنات القاموس ، كيف ستحل هذه المشكلة:

عرض قائمة البلدان مع عدد المستخدمين في كل بلد.

في هذه الحالة ، أحتاج إلى تمثيل Country الكائنات في نموذج القراءة مع المستمع ل UserAdded حدث.

شكرًا لك.

هل كانت مفيدة؟

المحلول

إذا كنت تستخدم مصادر الحدث كآلية الثبات ، ثم:

  • دفق الحدث هو المصدر الوحيد للحقيقة (يمكن استخدام لقطات الكائنات التي تم إنشاؤها من دفق الحدث لتحسين الأداء ، لكنها مجرد تقنية).
  • عند استخدام مصادر الحدث ، لا تحتاج إلى إنشاء الحدث بشكل صريح - ما عليك سوى نشر الأحداث الفعلية التي تم إنشاؤها أثناء معالجة الأمر.
  • إذا كان لديك قائمة محددة مسبقًا من البلدان ، فلن تتغير أبدًا ، فيمكنك فقط الرمز الشاق والرجوع إليها من خلال رموز بلدها. ومع ذلك ، فإن هذا يعني أن نموذج العرض ومعرفة واجهة المستخدم عن ذلك وأن البلدان لن تتغير.

راجع للشغل أوصي بنشر أسئلة مثل هذه مجموعة DDD/CQRS. إنه المجتمع الأكثر نشاطًا على أسئلة CQRS/DDD/ES.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top