Sobes.tech
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ą.