public static void Main(string[] args) { //setup our DI ServiceProvider serviceProvider = new ServiceCollection() .AddLogging() .AddSingleton <IBarService, BarService>() .AddSingleton <IFooService, FooService>() .BuildServiceProvider(); //configure console logging serviceProvider .GetService <ILoggerFactory>() .AddConsole(); //LogLevel.Debug ILogger logger = serviceProvider.GetService <ILoggerFactory>() .CreateLogger <Program>(); logger.LogInformation("Starting application"); //do the actual work here IBarService bar = serviceProvider.GetService <IBarService>(); bar.DoSomeRealWork(); logger.LogInformation("All done!"); Console.ReadLine(); }
protected override void ExecuteAsync(CancellationToken stoppingToken) { Logger.LogInformation("Hit ExecuteAsync()"); //do the actual work here _barService.DoSomeRealWork(); }