.NET Core学习——Program.cs
Program.cs
ASP.NET Core应用程序需要由Host(宿主)进行管理,宿主为其提供运行环境并负责启动。所以Main函数主要是用来初始化宿主环境,而宿主环境的初始化需要借助WebHostBuilder。初始化完毕后,调用Run()方法来启动应用程序。
1.WebHost.CreaateDefaultBuilder():创建WebHostBuilder。
2.UseStartup<Startup>():指定启动类,用于依赖注入和中间件注册。
3.Build():返回初始化完毕的IWebHost宿主。
4.Run():启动WebHost。
Program.cs
CreateDefaultBuilder():
CreateDefaultBuilder()
从上图中我们可以看出CreateDefaultBuilder()方法主要干了六件事:
UseKestrel:使用Kestrel作为Web server。
UseContentRoot:指定Web host使用的content root(内容根目录),比如Views。默认为当前应用程序根目录。
ConfigureAppConfiguration:设置当前应用程序配置。主要是读取 appsettinggs.json 配置文件、开发环境中配置的UserSecrets、添加环境变量和命令行参数 。
ConfigureLogging:读取配置文件中的Logging节点,配置日志系统。
UseIISIntegration:使用IISIntegration 中间件。
UseDefaultServiceProvider:设置默认的依赖注入容器。
创建完毕WebHostBuilder后,通过调用UseStartup()来指定启动类,来为后续服务的注册及中间件的注册提供入口,IWebHostBuilder负责创建IWebHost,然后Run()方法启动IWebHost。
作者:房祥_a7f1
链接:https://www.jianshu.com/p/01721c257b4e
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。