Net Core 高级知识点 泛型主机 HostBuilder

ASP.NET Core 中的应用启动

ASP.NET Core 模板会创建一个 .NET Core 泛型主机 HostBuilder(程序初始化实用工具)

hostbuilder中有个拓展方法ConfigureServices(IHostBuilder, Action<IServiceCollection>)向容器添加服务。 可多次进行调用,并累加结果

主机:是封装应用资源的对象

例如:说明下面列举的四个都是code中可能会用到的资源(就是mircosoft做好的,我们可以直接那来用就好了)

  • 依赖关系注入 (DI)
  • Logging
  • Configuration
  • IHostedService 实现

当主机启动时,它将对在托管服务的服务容器集合中注册的 IHostedService 的每个实现调用 IHostedService.StartAsync

在web 应用中,其中一个 IHostedService 实现是启动 HTTP 服务器实现的 web 服务。

主机通常由 Program 类中的代码配置生成运行。 Main 方法:

  • 调用 CreateHostBuilder 方法以创建和配置生成器对象。
  • 对生成器对象调用 Build 和 Run 方法。

Configuration

ASP.NET Core 提供了配置框架,可以从配置提供程序的有序集中将设置作为名称/值对

可将内置配置提供程序用于各种源,例如 .json 文件、.xml 文件、环境变量和命令行参数 。

可编写自定义配置提供程序以支持其他源。

默认情况下,ASP.NET Core 应用配置为从 appsettings.json、环境变量和命令行等读取内容。 

加载应用配置后,来自环境变量的值将替代来自 appsettings.json 的值。

读取相关配置值的首选方法是使用选项模式

人各有命,上天注定,有人天生为王,有人落草为寇。脚下的路,如果不是你自己的选择,那么旅程的终点在哪,也没人知道。你会走到哪,会遇到谁,都不一定。
原文地址:https://www.cnblogs.com/ZkbFighting/p/13633284.html