using JiShe.CollectBus.Host; using Microsoft.AspNetCore.Hosting; using Serilog; using Volo.Abp.Modularity.PlugIns; public class Program { /// /// /// /// /// 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(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(); }) .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(); } }