65 lines
2.1 KiB
C#
65 lines
2.1 KiB
C#
using JiShe.CollectBus.Host;
|
|
using Microsoft.AspNetCore.Hosting;
|
|
using Serilog;
|
|
using Volo.Abp.Modularity.PlugIns;
|
|
|
|
public class Program
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="args"></param>
|
|
/// <returns></returns>
|
|
public static async Task Main(string[] args)
|
|
{
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
builder.Host.UseContentRoot(Directory.GetCurrentDirectory())
|
|
.UseSerilog((context, loggerConfiguration) =>
|
|
{
|
|
loggerConfiguration.ReadFrom.Configuration(context.Configuration);
|
|
})
|
|
.UseAutofac();
|
|
await builder.AddApplicationAsync<CollectBusHostModule>(options =>
|
|
{
|
|
// 加载插件,固定模式,可热插拔
|
|
options.PlugInSources.AddFolder(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Plugins"));
|
|
});
|
|
var app = builder.Build();
|
|
await app.InitializeApplicationAsync();
|
|
await app.RunAsync();
|
|
|
|
|
|
//await CreateHostBuilder(args).Build().RunAsync();
|
|
}
|
|
|
|
private static IHostBuilder CreateHostBuilder(string[] args) =>
|
|
Host.CreateDefaultBuilder(args)
|
|
.UseContentRoot(Directory.GetCurrentDirectory())
|
|
.UseSerilog((context, loggerConfiguration) =>
|
|
{
|
|
loggerConfiguration.ReadFrom.Configuration(context.Configuration);
|
|
})
|
|
.ConfigureWebHostDefaults(webBuilder =>
|
|
{
|
|
webBuilder.UseStartup<Startup>();
|
|
})
|
|
.UseAutofac();
|
|
|
|
|
|
|
|
|
|
private static IHostBuilder CreateConsoleHostBuilder(string[] args) =>
|
|
Host.CreateDefaultBuilder(args)
|
|
.ConfigureServices((hostContext, services) => { ConfigureServices(services, hostContext); })
|
|
.UseAutofac()
|
|
.UseSerilog((context, loggerConfiguration) =>
|
|
{
|
|
loggerConfiguration.ReadFrom.Configuration(context.Configuration);
|
|
});
|
|
|
|
|
|
private static async Task ConfigureServices(IServiceCollection services, HostBuilderContext hostContext)
|
|
{
|
|
await services.AddApplicationAsync<CollectBusHostModule>();
|
|
}
|
|
} |