Junior — Middle
102
Можешь привести примеры DI-контейнеров, которые применяются в разработке?
Ответ от нейросети
sobes.tech AI
В C# для внедрения зависимостей (Dependency Injection, DI) широко используются различные DI-контейнеры. Вот несколько популярных примеров:
- Microsoft.Extensions.DependencyInjection — встроенный в .NET Core и .NET 5+ контейнер, простой и эффективный для большинства задач.
- Autofac — мощный и гибкий контейнер с расширенными возможностями, поддерживает сложные сценарии.
- Ninject — удобный и легко расширяемый контейнер с лаконичным синтаксисом.
- Unity — контейнер от Microsoft Patterns & Practices, поддерживает множество функций.
Пример использования встроенного контейнера:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Эти контейнеры помогают управлять жизненным циклом объектов и упрощают тестирование и поддержку кода.