|
|
@ -1,42 +1,24 @@ |
|
|
using System.Threading; |
|
|
using System.Threading; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
using Microsoft.Extensions.Configuration; |
|
|
|
|
|
using Microsoft.Extensions.DependencyInjection; |
|
|
|
|
|
using Microsoft.Extensions.Hosting; |
|
|
using Microsoft.Extensions.Hosting; |
|
|
using Serilog; |
|
|
|
|
|
using Volo.Abp; |
|
|
using Volo.Abp; |
|
|
|
|
|
|
|
|
namespace MyCompanyName.MyProjectName; |
|
|
namespace MyCompanyName.MyProjectName; |
|
|
|
|
|
|
|
|
public class MyProjectNameHostedService : IHostedService |
|
|
public class MyProjectNameHostedService : IHostedService |
|
|
{ |
|
|
{ |
|
|
private IAbpApplicationWithInternalServiceProvider _abpApplication; |
|
|
private readonly IAbpApplicationWithExternalServiceProvider _abpApplication; |
|
|
|
|
|
private readonly HelloWorldService _helloWorldService; |
|
|
|
|
|
|
|
|
private readonly IConfiguration _configuration; |
|
|
public MyProjectNameHostedService(HelloWorldService helloWorldService, IAbpApplicationWithExternalServiceProvider abpApplication) |
|
|
private readonly IHostEnvironment _hostEnvironment; |
|
|
|
|
|
|
|
|
|
|
|
public MyProjectNameHostedService(IConfiguration configuration, IHostEnvironment hostEnvironment) |
|
|
|
|
|
{ |
|
|
{ |
|
|
_configuration = configuration; |
|
|
_helloWorldService = helloWorldService; |
|
|
_hostEnvironment = hostEnvironment; |
|
|
_abpApplication = abpApplication; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public async Task StartAsync(CancellationToken cancellationToken) |
|
|
public async Task StartAsync(CancellationToken cancellationToken) |
|
|
{ |
|
|
{ |
|
|
_abpApplication = await AbpApplicationFactory.CreateAsync<MyProjectNameModule>(options => |
|
|
await _helloWorldService.SayHelloAsync(); |
|
|
{ |
|
|
|
|
|
options.Services.ReplaceConfiguration(_configuration); |
|
|
|
|
|
options.Services.AddSingleton(_hostEnvironment); |
|
|
|
|
|
|
|
|
|
|
|
options.UseAutofac(); |
|
|
|
|
|
options.Services.AddLogging(loggingBuilder => loggingBuilder.AddSerilog()); |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
await _abpApplication.InitializeAsync(); |
|
|
|
|
|
|
|
|
|
|
|
var helloWorldService = _abpApplication.ServiceProvider.GetRequiredService<HelloWorldService>(); |
|
|
|
|
|
|
|
|
|
|
|
await helloWorldService.SayHelloAsync(); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public async Task StopAsync(CancellationToken cancellationToken) |
|
|
public async Task StopAsync(CancellationToken cancellationToken) |
|
|
|