建立网站的费用,福田网站建设 信科网络,深圳市建设,广告传媒公司业务范围一、介绍官方文档中说#xff0c;Microsoft.AspNetCore.App 元包#xff08;ASP.NET Core 2.1 或更高版本#xff09;包含通用主机的Microsoft.Extensions.Hosting包#xff0c;当创建控制台项目以后并没有相应的包。在官方案例中所用的Nuget包有#xff1a;1. Microsoft.… 一、介绍 官方文档中说Microsoft.AspNetCore.App 元包ASP.NET Core 2.1 或更高版本包含通用主机的Microsoft.Extensions.Hosting包当创建控制台项目以后并没有相应的包。 在官方案例中所用的Nuget包有 1. Microsoft.Extensions.Hosting 2. Microsoft.Extensions.Configuration.Json 3. Microsoft.Extensions.Configuration.EnvironmentVariables 4. Microsoft.Extensions.Configuration.CommandLine 5. Microsoft.Extensions.DependencyInjection 6. Microsoft.Extensions.Logging.Console 7. Microsoft.Extensions.Logging.Debug 托管服务实现 IHostedService 接口并且是执行代码的入口点。 每个 IHostedService 实现都按照 ConfigureServices 中服务注册的顺序执行。 主机启动时每个 IHostedService 上都会调用 StartAsync。主机正常关闭时以反向注册顺序调用 StopAsync。 托管服务还有BackgroundService排队的后台任务IScopedProcessingService有作用域的服务二、主机配置 默认的情况下是不配置主机环境变量。需要配置可以调用ConfigureHostConfiguration和ConfigureAppConfiguration方法进行配置并且他们可以同时调用多次得到累计结果 代码中调用两次ConfigureHostConfiguration方法都是加载配置文件。加载的文件在当前方法无法获取到文件的类容。例如第一次调用加载hostsettings.json文件无法立刻获取改文件内容。在加载appsettings.json这个方法里就能拿到hostsettings.json的内容三、依赖关系注入配置日志 ConfigureServices将服务添加到应用的依赖关系注入容器。 可多次调用 ConfigureServices并得到累计结果。 ConfigureLogging添加一个委托用于配置提供的 ILoggingBuilder。 可以利用相加结果多次调用 ConfigureLogging 四、IApplicationLifetime接口和IHostedService接口的实现类 IApplicationLifetime 允许启动后和关闭活动包括正常关闭请求。通过构造函数将 IApplicationLifetime 服务注入到任何类中用于注册事件 ApplicationStarted完全启动触发ApplicationStopped正在完成关闭触发ApplicationStopping正在执行关闭触发 StopApplication() 方法用于关闭整个主机相关文章Asp.net Core 2.1新功能Generic Host(通用主机)深度学习在.NET Core微服务中使用HostBuilder和Generic Host原文地址https://www.cnblogs.com/haosit/p/9713446.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com