Junior — Middle
Kokiais metodais užtikrinama priklausomybių diegimas kode?
sobes.tech AI
Atsakymas iš AI
Priklausomybių injekcija (Dependency Injection, DI) C# dažniausiai įgyvendinama šiais būdais:
- Per konstruktorių — priklausomybės perduodamos klasei per konstruktoriaus parametrus. Tai yra dažniausiai naudojamas ir rekomenduojamas būdas.
public class Service {
private readonly IRepository _repository;
public Service(IRepository repository) {
_repository = repository;
}
}
- Per savybes (Property Injection) — priklausomybės nustatomos per klasės savybes.
public class Service {
public IRepository Repository { get; set; }
}
- Per metodus (Method Injection) — priklausomybės perduodamos į metodus, kurie jas naudoja.
public class Service {
public void Execute(IRepository repository) {
// naudojamas repository
}
}
Priklausomybių valdymui dažnai naudojami DI konteineriai (pvz., Microsoft.Extensions.DependencyInjection), kurie automatiškai kuria ir teikia reikalingus objektus.
Šiuo būdu, priklausomybių injekcija leidžia kodą padaryti moduliškesnį, testuojamą ir lengviau prižiūrimą.