Dependency Injection در .NET
Dependency Injection یا تزریق وابستگی یکی از مهمترین قابلیتهای .NET است که باعث کاهش وابستگی بین کلاسها و افزایش قابلیت تست، توسعه و نگهداری برنامه میشود.
Dependency Injection چیست؟
در Dependency Injection، یک کلاس به جای ایجاد وابستگیهای خود، آنها را از بیرون دریافت میکند. این کار باعث میشود کلاسها مستقلتر و قابل استفاده مجدد باشند.
ثبت سرویس
builder.Services.AddScoped<IEmailService, EmailService>();
تزریق سرویس در Constructor
public class HomeController : Controller
{
private readonly IEmailService _emailService;
public HomeController(IEmailService emailService)
{
_emailService = emailService;
}
}
مزایای Dependency Injection
- کاهش وابستگی بین کلاسها
- افزایش قابلیت تست (Unit Testing)
- افزایش قابلیت توسعه
- مدیریت سادهتر سرویسها
جمعبندی
Dependency Injection یکی از مهمترین الگوهای طراحی در .NET است و تقریباً تمام پروژههای ASP.NET Core از آن برای مدیریت سرویسها و وابستگیها استفاده میکنند.