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这个类作为配置 webBuilder.UseStartup<Startup>( ); });}public class Startup { // 这里的configuration也是通过依赖注入获得 // 因为.net core默认已经进行了一些依赖注入的绑定 public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { // 这里添加我们自己依赖注入服务 services.AddControllers( ); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment( )) { app.UseDeveloperExceptionPage( ); } // .NET Core 3.x的执行管道 app.UseRouting( ); app.UseAuthorization( ); app.UseEndpoints(endpoints => { endpoints.MapControllers( ); }); }}
01 .net core 3.x 启动顺序Sunrate、 picitup、 2017开年沙龙 涵哥&招商经理喊你一起聊亚马逊、 旺季前夕,看看去年德国站什么产品爆单了?、 eBay移动端推出了什么功能?2020年eBay移动端推出的功能是免费的吗?·、 敏哥:揭秘亚马逊A9算法中的关联流量玩儿法、 珠海情侣路在哪里?好玩吗?、 清远黄龙峡漂流有什么特色?、 东莞丽城隐贤山庄在哪?怎么去?、
No comments:
Post a Comment