Junior — Middle
Puoi fare degli esempi di contenitori DI utilizzati nello sviluppo?
sobes.tech AI
Risposta dell'AI
In C# vengono ampiamente utilizzati vari contenitori di Dependency Injection (DI). Ecco alcuni esempi popolari:
- Microsoft.Extensions.DependencyInjection — contenitore integrato in .NET Core e .NET 5+, semplice ed efficiente per la maggior parte dei compiti.
- Autofac — contenitore potente e flessibile con funzionalità avanzate, supporta scenari complessi.
- Ninject — contenitore comodo e facilmente estensibile con sintassi concisa.
- Unity — contenitore di Microsoft Patterns & Practices, supporta molte funzioni.
Esempio di utilizzo del contenitore integrato:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Questi contenitori aiutano a gestire il ciclo di vita degli oggetti e semplificano i test e la manutenzione del codice.