예제 #1
0
    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();
    }
예제 #2
0
        protected override void ExecuteAsync(CancellationToken stoppingToken)
        {
            Logger.LogInformation("Hit ExecuteAsync()");

            //do the actual work here
            _barService.DoSomeRealWork();
        }