ورود

View Full Version : چطور میشه تزریق وابستگی را در کلاس های Static انجام داد؟



mmbguide
پنج شنبه 30 تیر 1401, 17:47 عصر
سلام دوستان

من یک کلاس Static دارم که در واقع Extension Method هستش و بعضی از متدها نیاز دارند تا به Context برنامه دسترسی داشته باشند. چطور میشه تزریق وابستگی انجام داد؟ چون سازنده کلاس Static پارامتر نمیپذیره. پس راه دسترسی به یک سرویس چطور باید انجام بشه؟

تشکر

mmbguide
پنج شنبه 30 تیر 1401, 17:57 عصر
البته راه حل Method Injection در لینک زیر پیشنهاد شده:

https://stackoverflow.com/questions/55213803/use-dependency-injection-in-static-class

فقط نمیدونم TResponse که مقدار برگشتی هستش باید چی تعریف بشه؟ اصلا چطور باید از Method Injection جهت استفاده از سرویس استفاده کرد.

mmbguide
پنج شنبه 30 تیر 1401, 18:15 عصر
فعلا راه حلی که به ذهنم رسیده این بوده که در تمام متدها یک پارامتر از نوع IUnitOfWork را اضافه کنم و در سازنده Controller که دسترسی به سرویس دارم و متغیر اون نیز یک بار تعرف شده، پاس بدم به متدی که نیاز دارم. اگرچه که این کار داره جواب میده ولی خیلی جالب نیست. آیا استفاده از این روش صحیح است؟