/
deminnm
/
CsharpExamples
Обзор
Документация
Войти
/
deminnm
/
CsharpExamples
Код
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/DependencyInjection/Program.cs
24 строки
993 B
Nickolay Demin
feat: пример dependency injection
19 июн 2026, 21:45
19 июн 2026, 21:45
785f621
Код
Авторство
О чём код?
using Microsoft.Extensions.DependencyInjection; Console.WriteLine("Dependency Injection"); var serviceProvider = new ServiceCollection() .AddTransient<IIdGenerator, IntIdGenerator>() .AddTransient<IIdGenerator, GuidIdGenerator>() .AddTransient<IIdGenerator, UuidIdGenerator>() .BuildServiceProvider(); var idGenerators = serviceProvider.GetServices<IIdGenerator>().ToArray(); Console.WriteLine("Зарегистрированные генераторы:"); foreach (var i in Enumerable.Range(0, idGenerators.Length)) Console.WriteLine($"{i + 1}. {idGenerators[i].GetType().Name}"); Console.Write("Выберите номер генератора[1]: "); int choice = int.TryParse(Console.ReadLine(), out int parsedChoice) ? parsedChoice : 1; var selectedType = idGenerators[choice - 1].GetType(); var idProvider = idGenerators[choice - 1]; foreach (var i in Enumerable.Range(1, 10)) { var id = idProvider.GenerateId(); Console.WriteLine($"{i:000}: {id}"); }