Junior — Middle
Ar galite pateikti DI konteinerių pavyzdžių, kurie naudojami kūrimo procese?
sobes.tech AI
Atsakymas iš AI
C# kalboje plačiai naudojami įvairūs priklausomybės injekcijos (Dependency Injection, DI) konteineriai. Čia keletas populiarių pavyzdžių:
- Microsoft.Extensions.DependencyInjection — įmontuotas konteineris .NET Core ir .NET 5+ versijose, paprastas ir efektyvus daugeliui užduočių.
- Autofac — galingas ir lankstus konteineris su pažangiais galimybėmis, palaiko sudėtingus scenarijus.
- Ninject — patogus ir lengvai plėtojamas konteineris su glausta sintakse.
- Unity — Microsoft Patterns & Practices konteineris, palaiko daugybę funkcijų.
Pavyzdys, kaip naudoti įmontuotą konteinerį:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Šie konteineriai padeda valdyti objektų gyvavimo ciklą ir palengvina kodo testavimą bei priežiūrą.