กิจกรรมการใช้งานใน DDD?

Jan 01 2021

คำถามนี้คล้ายกับ: มีเงื่อนไขเหตุการณ์ของแอปพลิเคชันใน DDD หรือไม่ แต่ฉันไม่รู้ว่าจะใช้คำอธิบายที่ให้ไว้กับปัญหาเฉพาะของฉันอย่างไร

ฉันมีSearchFilmUseCaseและต้องการเพิ่มเหตุการณ์FilmSearchedEventเมื่อเสร็จสิ้นการดำเนินการ ขณะนี้เลเยอร์แอปพลิเคชันกำลังเพิ่มเหตุการณ์ วิธีเดียวที่ฉันสามารถยกเหตุการณ์นี้จากโดเมนได้คือในไฟล์FilmRepository. อย่างไรก็ตามที่เก็บเป็นเพียงอินเทอร์เฟซดังนั้นฉันจึงไม่สามารถเพิ่มเหตุการณ์ที่นั่นได้

ผมคิดว่าการเพิ่มเหตุการณ์ที่เลเยอร์แอปพลิเคชันไม่ถูกต้อง ฉันจะเข้าใกล้สถานการณ์นี้ได้อย่างไร?

คำตอบ

2 choquero70 Jan 03 2021 at 13:52

วิธีแก้ปัญหาหนึ่งคือการสร้างบริการโดเมนเพื่อดำเนินการค้นหาและเพิ่มเหตุการณ์

1 Albert Jan 01 2021 at 20:09

กิจกรรมของโดเมนทั้งหมดจะต้องถูกเพิ่มขึ้นจากเลเยอร์โดเมน สถานที่ที่ดีที่สุดคือรูทรวมที่ควรดำเนินการจริงๆ รูทรวมอาจมีเหตุการณ์โดเมนทั้งหมดที่ถูกยกขึ้นและในเลเยอร์แอปพลิเคชันคุณสามารถรับและเผยแพร่ไปยังบัสเหตุการณ์ได้