1. .net core 3.x启动执行顺序
- ConfigureWebHostDefaults:使用.net core 3.x的默认配置
- ConfigureHostConfiguration
- ConfigureAppConfiguration
- ConfigureServices
- ConfigureLogging
- Startup
- Startup.ConfigureSerices:主要是用于注册服务容器,例如进行依赖注入和读取配置文件等。
- Startup.Configure:.net core 3.x启动时会调用这个方法,这里主要是配置HTTP请求管道,例如路由、mvc、静态文件等。
2. 例子
asp.net core本质上是一个命令行程序,从Program.cs的Main方法启动。新建一个API类型的模板(默认已经配置好了一些功能)来进行测试。
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这个类.........