عنوان:

‫آیا استفاده از Handler در یک Handler دیگر در الگوی Mediator صحیح است؟


نویسنده: هادی مزارعی
تاریخ: ۱۴۰۳/۰۵/۲۵ ۱۰:۲۲
آدرس: www.dntips.ir

سلام

یک پروژه با کتابخانه MediatR ایجاد کردم و برای عملیات CRUD به ازای تمام Entityها Handlerهای مورد نیاز را پیاده سازی کردم. برخی از این Handlerها در زمان اجرای Bussiness مربوط به خودش، نیاز داره تا اطلاعاتی را در یک جدول دیگر در بانک اطلاعاتی ذخیره کنه ولی افزودن اطلاعات جدید در جدول دوم، مستلزم لحاظ نمودن Business مربوط به Handler دوم است. به تمامی Handlerها IEntityRepository مربوط به Entity که در Domain تعریف شده است تزریق می شود. در لایه Infrastructure نیز تمام متدهای موجود در IEntityRepository تحت نام EntityRepository پیاده سازی شده اند.

سوال:

  1. آیا با توجه به سناریوی بالا، امکان تزریق MediatR.IMediator در Handler اول وجود دارد (از حیث Best Practice بودن)؟
  2. اگر آیتم یک مناسب نباشد آیا باید یک لایه دیگری به پروژه افزوده شود تا امکان استفاده از Handlerهای مشترک وجود داشته باشد؟
  3. در یکی از منابع اینترنتی به آیتم شماره یک عنوان Anti Pattern داده بودند. آیا درست است؟

تشکر

نظرات