.NET6 了解NET Core运行原理剖析

ASP.NET Core 程序启动过程如下
请添加图片描述
了解Program.cs
Program类在启动时创建Web Host。然后,它配置日志记录、依赖注入容器、Kestrel Web服务器、IIS集成等。它还将框架服务添加到DI容器中,以便我们可以使用它。 Program类的代码是vs自动生成的,并且对于大多数项目来说很可能已经足够了。

什么是web host?
Web host负责启动应用程序并运行它。 在应用程序启动时创建。 Web host创建一个服务器,该服务器侦听HTTP请求。 它配置请求管道(或中间件管道)。 另外,它设置了DI容器,我们在其中添加了服务。 管理服务的生命周期也是Web host的任务。

下图显示了如何创建web host
请添加图片描述
CreateWebHostBuilder 创建主机并为其提供配置。build方法使用提供的配置进行构建。Run方法运行它,然后侦听HTTP请求

Startup 类
ASP.NET Core 应用使用 Startup 类,按照约定命名为 Startup 。 Startup 类:

可选择性地包括 ConfigureServices 方法以配置应用的服务。
必须包括 Configure 方法以创建应用的请求处理管道。

public class Startup
{
    // 使用此方法向容器添加服务
    public void ConfigureServices(IServiceCollection services)
    {
        ...
    }

    // 使用此方法配置HTTP请求管道
    public void Configure(IApplicationBuilder app)
    {
        ...
    }
}

ConfigureServices 方法
ConfigureServices作用即实现了依赖注入(DI)的配置,只有把服务添加到服务容器中才能让这些服务可以通过依赖注入的形式在应用中使用

例如添加Service和Iservice注入

services.AddScoped<IMyDependency, MyDependency>();

Configure 方法
Configure 是一个在

命名空间 Microsoft.AspNetCore.Hosting 定义的 抽象类 ↓↓↓

public abstract void Configure(Microsoft.AspNetCore.Builder.IApplicationBuilder app);

IApplicationBuilder
IApplicationBuilder 定义用于配置应用请求管道的类,ASP.NET Core 请求管道包含一系列请求委托,依次调用。

转载于:
https://blog.csdn.net/bsbing/article/details/119530939

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值