using Microsoft.Extensions.Hosting; using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using Volo.Abp; using Serilog; namespace ConsoleClientDemo { public class ConsoleClientDemoHostedService : IHostedService { public async Task StartAsync(CancellationToken cancellationToken) { using (var application = AbpApplicationFactory.Create(options => { options.Services.AddLogging(loggingBuilder => { loggingBuilder.AddSerilog(dispose: true); }); })) { application.Initialize(); var demo = application.ServiceProvider.GetRequiredService(); await demo.RunAsync(); application.Shutdown(); } } public Task StopAsync(CancellationToken cancellationToken) => Task.CompletedTask; } }