2022-05-19 12:15:16
C# ASP.NET Core项目中Program.cs文件是应用程序的入口点,负责启动和配置Web主机。 以下是其核心用途的详细说明:
程序入口
通过public static void Main(string[] args)方法启动控制台应用,这是ASP.NET Core应用的起点。
调用BuildWebHost(args).Run()构建并运行Web主机。
Web主机配置
WebHost.CreateDefaultBuilder(args)
创建预配置的IWebHostBuilder实例,蔽哗默认包含以下设置:
设置Content Root为当前目录,支持命令行参数传递。
加载配置文件(appsettings.json和appsettings.{Environment}.json)。
添加环境变量到配置对象。
开发环境下启用密钥加载(如用户密钥)。
配置控制台/调试日志记录。
指定使用Kestrel作为Web服务器,并加载喊并缺其配置(如端口、SSL等)。
添加IIS集成(通过UseIISIntegration(),仅在托管于IIS时生效)。
启动类绑定
UseStartup<Startup>()
指定Startup类(或自定义类)作为应用配置入口,用于依赖注入、中间件管道等初始化。
启动与运行
Build()
生成IWebHost实例,封郑辩装所有配置(如服务、中间件、服务器等)。
Run()
启动Web应用并阻塞线程,直到应用终止(如Ctrl+C或进程退出)。
总结:Program.cs是ASP.NET Core应用的启动核心,通过CreateDefaultBuilder简化主机配置(如Kestrel、IIS、配置文件等),最终构建并运行Web主机,将控制权交给Startup类完成应用逻辑初始化。