using Autofac.Extensions.DependencyInjection; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Microsoft.AspNetCore.Builder; using Topshelf; namespace Admin.Core.RealTimeService { public class Program { /// /// Main /// /// public static void Main(string[] args) { MainService ms = new MainService(args); ms.Start(); Console.ReadKey(); #region Topshelf——写入windows服务,需要开启 //var rc = HostFactory.Run(x => //{ // x.Service(s => // { // s.ConstructUsing(name => new MainService(args)); // s.WhenStarted(tc => tc.Start()); // s.WhenStopped(tc => tc.Stop()); // }); // x.RunAsLocalSystem(); // x.SetDescription("JwtAPIService"); // x.SetDisplayName("JwtAPIService"); // x.SetServiceName("JwtAPIService"); //}); //var exitCode = (int)Convert.ChangeType(rc, rc.GetTypeCode()); //Environment.ExitCode = exitCode; #endregion } /// /// CreateHostBuilder /// /// /// //public static IHostBuilder CreateHostBuilder(string[] args) //{ // //初始化默认主机Builder // var hostBuilder = Host.CreateDefaultBuilder(args) // //Autofac服务工厂 // .UseServiceProviderFactory(new AutofacServiceProviderFactory()) // .ConfigureWebHostDefaults(webBuilder => // { // webBuilder.UseStartup(); // }) // .ConfigureLogging((hostingContext, builder) => // { // //清楚控制台log日志 // builder.ClearProviders(); // // 1.过滤掉系统默认的一些日志 // builder.AddFilter("System", LogLevel.Error); // builder.AddFilter("Microsoft", LogLevel.Error); // // 默认log4net.confg // builder.AddLog4Net(Path.Combine(Directory.GetCurrentDirectory(), "Log4net.config")); // }); // return hostBuilder; //} } }