Sobes.tech
Junior — Middle

Jakie metody zapewniają wdrożenie zależności w kodzie?

sobes.tech AI

Odpowiedź od AI

Wstrzykiwanie zależności (Dependency Injection, DI) w C# jest zwykle realizowane w następujący sposób:

  1. Przez konstruktor — zależności są przekazywane do klasy przez parametry konstruktora. To najpowszechniejszy i zalecany sposób.
public class Service {
    private readonly IRepository _repository;

    public Service(IRepository repository) {
        _repository = repository;
    }
}
  1. Przez właściwości (Property Injection) — zależności są ustawiane przez właściwości klasy.
public class Service {
    public IRepository Repository { get; set; }
}
  1. Przez metody (Method Injection) — zależności są przekazywane do metod, które ich używają.
public class Service {
    public void Execute(IRepository repository) {
        // użycie repository
    }
}

Do zarządzania zależnościami często używa się kontenerów DI (np. Microsoft.Extensions.DependencyInjection), które automatycznie tworzą i dostarczają potrzebne obiekty.

W ten sposób wstrzykiwanie zależności pozwala uczynić kod bardziej modułowym, testowalnym i łatwiejszym w utrzymaniu.