1. .net core 3.x启动执行顺序

  1. ConfigureWebHostDefaults:使用.net core 3.x的默认配置
  2. ConfigureHostConfiguration
  3. ConfigureAppConfiguration
  4. ConfigureServices
  5. ConfigureLogging
  6. Startup
  7. Startup.ConfigureSerices:主要是用于注册服务容器,例如进行依赖注入和读取配置文件等。
  8. Startup.Configure:.net core 3.x启动时会调用这个方法,这里主要是配置HTTP请求管道,例如路由、mvc、静态文件等。

2. 例子

asp.net core本质上是一个命令行程序,从Program.cs的Main方法启动。新建一个API类型的模板(默认已经配置好了一些功能)来进行测试。

01 .net core 3.x 启动顺序_.net core 3.x

 

 

public class Program { public static void Main(string[] args) {  CreateHostBuilder(args).Build( ).Run( ); } public static IHostBuilder CreateHostBuilder(string[] args) =>  Host.CreateDefaultBuilder(args)   .ConfigureWebHostDefaults(webBuilder => {    // 这里调用了Startup这个类.........