ASP.NET Core 2.2 基础知识(八) 主机 (未完待续)

本文深入探讨了ASP.NET Core中的两种主机API:Web主机和通用主机。Web主机专为Web应用设计,而通用主机则适用于非Web应用,提供更灵活的主机方案。文章详细解释了CreateDefaultBuilder方法如何配置Kestrel作为Web服务器,加载配置,设置日志记录等关键任务。

主机负责应用程序启动和生存期管理.共有两个主机 API :

1.Web 主机 : 适用于托管 Web 应用,基于 IWebHostBuilder ;

2.通用主机 : 适用于托管非 Web 应用. 基于 HostBuilder .

官方:

通用主机的目标是将 HTTP 管道从 Web 主机 API 中分离出来,从而启用更多的主机方案。 基于通用主机的消息、后台任务和其他非 HTTP 工作负载可从横切功能(如配置、依赖关系注入 [DI] 和日志记录)中受益

通用主机是 ASP.NET Core 2.1 中的新增功能,不适用于 Web 承载方案。 对于 Web 承载方案,请使用 Web 主机。通用主机正处于开发阶段,用于在未来版本中替换 Web 主机,并在 HTTP 和非 HTTP 方案中充当主要的主机 API。

Web 主机

    public class Program
    {
        public static void Main(string[] args)
        {
            CreateWebHostBuilder(args).Build().Run();
        }

        public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
                .UseStartup<Startup>();
    }


CreateDefaultBuilder 方法执行了很多重要任务:

1.将 Kesstrel 配置为 Web 服务器;

2.加载主机配置;

3.通过以下对象加载应用配置:

  • appsetting.json.
  • appsettings.{Environment}.json.
  • 开发环境下的用户机密.
  • 环境变量.
  • 命令行参数

4.配置控制台和调式输出的日志记录;

5.启用IIS集成.

 

 

未完待续...

转载于:https://www.cnblogs.com/refuge/p/10226645.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值