using Microsoft.Extensions.DependencyInjection;
public static void Main(string[] args)
var serviceProvider = new ServiceCollection()
.AddTransient<IIntService,IntService>()
var bar = serviceProvider.GetService<IBarService>();
Console.WriteLine("All done!");
public interface IIntService
void DoThing(int number);
public interface IBarService
void DoSomeIntegerWork();
public class BarService : IBarService
private readonly IIntService _intService;
public BarService(IIntService intService)
_intService = intService;
public void DoSomeIntegerWork()
for (int i = 0; i < 10; i++)
public class IntService : IIntService
public void DoThing(int number)
Console.WriteLine($"Writing integer {number}");