Sobes.tech
Junior — Middle

Tudsz példákat mondani a fejlesztésben használt DI-konténerekről?

sobes.tech MI

Válasz az MI-től

C#-ban széles körben használnak különböző Dependency Injection (DI) konténereket. Íme néhány népszerű példa:

  • Microsoft.Extensions.DependencyInjection — beépített konténer a .NET Core és a .NET 5+ rendszerben, egyszerű és hatékony a legtöbb feladathoz.
  • Autofac — erőteljes és rugalmas konténer fejlett lehetőségekkel, támogatja a bonyolult forgatókönyveket.
  • Ninject — kényelmes és könnyen bővíthető konténer tömör szintaxissal.
  • Unity — a Microsoft Patterns & Practices által fejlesztett konténer, sok funkciót támogat.

A beépített konténer használatának példája:

var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();

Ezek a konténerek segítenek az objektumok életciklusának kezelésében, és megkönnyítik a kód tesztelését és karbantartását.