AutoDispatching/AutoDispathingWork/Program.cs
2023-11-17 17:43:23 +08:00

40 lines
1.1 KiB
C#

using LiteDB;
using WorkerService1;
using WorkerService1.Dto.Configuration;
using WorkerService1.Services;
var builder = WebApplication.CreateBuilder(args);
var config = new ConfigurationManager()
.AddJsonFile("appsettings.json", false, true)
.Build();
builder.Services.AddCors(x =>
{
x.AddPolicy("AllowAllOrigin", builder =>
{
builder
.SetIsOriginAllowed(_ => true)
.AllowAnyMethod()
.AllowAnyHeader();
});
});
builder.Services.AddSingleton<LiteDatabase>(x => new LiteDatabase(builder.Configuration["Database:ConnectionString"]));
builder.Services.AddSingleton<IConfiguration>(config);
builder.Services.Configure<ClientOptions>(config.GetSection("ClientOptions"));
builder.Services.AddHttpClient();
builder.Services.AddMemoryCache();
builder.Services.AddLogging();
builder.Services.AddMvcCore();
builder.Services.AddSingleton<SpiderServices>();
#if !DEBUG
builder.Services.AddHostedService<Worker>();
builder.Services.AddHostedService<CloseWorker>();
#endif
var app = builder.Build();
app.UseCors("AllowAllOrigin");
app.MapControllers();
app.Run();