net虛擬主機操作方法 net主機是啥
1 前置閱讀在閱讀本文章之前 , 你可以先閱讀:
- Topshelf一個用于使用.NET構建Windows服務框架
TopshelfMicrosoft.Extensions.Hosting【net虛擬主機操作方法 net主機是啥】當然我們也需要安裝Serilog相關的日志框架 。Serilog.Extensions.HostingSerilog.Settings.ConfigurationSerilog.Sinks.ConsoleSerilog.Sinks.FileTopshelf.Serilog2.2 創建.NET泛型主機然后 , 我們先建立CreateHostBuilder()方法 , 并加載了Serilog日志并依賴注入MyService和AppSettings , MyService類作為Topshelf所使用的主要邏輯程序 , 它會提供Start()和Stop()做為Topshelf執行或停止主要邏輯程序的動作 。class Program{static void Main(string[] args){var host = CreateHostBuilder(args).Build();}public static IHostBuilder CreateHostBuilder(string[] args) =>Microsoft.Extensions.Hosting.Host.CreateDefaultBuilder(args).UseSerilog().ConfigureServices((hostContext, services) =>{services.Configure<AppSettings>(hostContext.Configuration);services.AddTransient<MyService>();});}2.3 在Topshelf中注冊服務接著 , 在Topshelf中注冊我們的服務類 。跳轉到Program.cs并添加:class Program{static void Main(string[] args){var host = CreateHostBuilder(args).Build();RunWindowsServiceWithHost(host);}private static void RunWindowsServiceWithHost(IHost host){var rc = HostFactory.Run(x =>{x.UseSerilog();x.SetDisplayName("我的服務");x.SetDescription("我的服務詳細描述");x.SetServiceName("MyService");var myService = host.Services.GetRequiredService<MyService>();x.Service<MyService>(s =>{s.ConstructUsing(() => myService);s.WhenStarted(tc => tc.Start());s.WhenStopped(tc => tc.Stop());});x.RunAsLocalSystem();x.StartAutomatically();});var exitCode = (int)Convert.ChangeType(rc, rc.GetTypeCode());Environment.ExitCode = exitCode;}}2.4 MyService類接著 , 我們看看MyService類 , 主要演示了注入ILogger和AppSettings 。public class MyService{private readonly ILogger logger;private readonly AppSettings settings;public MyService(IOptions<AppSettings> settings, ILogger<MyService> logger){this.settings = settings.Value;this.logger = logger;}public void Start(){logger.LogInformation($"Starting {this.settings.ServiceName}...");}public void Stop(){logger.LogInformation($"Stopping {this.settings.ServiceName}...");}}2.5 運行應用程序最后 , F5執行應用程序 , 如果一切順利 , 你應該會看到類似以下內容的信息:
文章插圖
推薦閱讀
- 海底撈學生證打折怎么操作 海底撈周末幾點6.9折幾點88折
- 華碩win8怎么升級win10
- 8g沖浪是什么意思
- 05款天籟右后視鏡怎么調節 具體怎么操作
- 慢病預防宣傳口號
- ppt轉換word文檔操作方法 ppt用什么軟件做好
- 無線打印機連接電腦操作方法 打印機如何連接到電腦
- 電腦一鍵還原操作步驟 電腦如何刷機重裝系統
- 網易云取消自動續費操作方法 網易云音樂取消自動續費怎么取消
- 方舟生存手游南方巨獸龍固定刷新點在哪里 應該怎么操作
