Sobes.tech
Junior — Middle

Milyen módszerek biztosítják az függőségek bevezetését a kódban?

sobes.tech MI

Válasz az MI-től

A függőségek injektálása (Dependency Injection, DI) C#-ban általában a következő módokon valósítható meg:

  1. Konstruktoron keresztül — a függőségek a konstruktor paraméterein keresztül kerülnek átadásra a osztálynak. Ez a leggyakoribb és ajánlott módszer.
public class Service {
    private readonly IRepository _repository;

    public Service(IRepository repository) {
        _repository = repository;
    }
}
  1. Tulajdonságokon keresztül (Property Injection) — a függőségek a osztály tulajdonságain keresztül kerülnek beállításra.
public class Service {
    public IRepository Repository { get; set; }
}
  1. Metódusokon keresztül (Method Injection) — a függőségek a használó metódusoknak kerülnek átadásra.
public class Service {
    public void Execute(IRepository repository) {
        // repository használata
    }
}

A függőségek kezeléséhez gyakran használnak DI konténereket (pl. Microsoft.Extensions.DependencyInjection), amelyek automatikusan létrehozzák és biztosítják a szükséges objektumokat.

Ezzel a módszerrel a függőségek injektálása modulárisabbá, tesztelhetőbbé és karbantarthatóbbá teszi a kódot.