
ASP.NET Core Web应用实际上是一个启动执行的控制台项目。
从 Program 类中的入口点 public static void Main() 开始,我们可以在其中创建一个 托管网络应用程序。public class Program{
public static void Main(string[] args){
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<startup>()
.Build();
}WebHost 是一个静态类,可以用于创建具有预配置默认值的 IWebHost 和 IWebHostBuilder 的实例。
CreateDefaultBuilder() 方法创建一个具有预配置默认值的 WebHostBuilder 的新实例。在内部,
它配置 Kestrel,IISIntegration 和其他配置。以下是 CreateDefaultBuilder() 方法。
将“Content Root”设置为当前目录 允许将命令行参数传递给配置对象 加载 appsettings.json 和 appsettings.{Environment}.json 两个配置文件 将以下内容翻译成中文,保留html代码,不添加新内容: 将环境变量添加到配置对象中 如果处于开发环境,则允许加载密钥。 添加控制台/调试日志记录器 告诉应用程序使用Kestrel,并从加载的配置中加载Kestrel配置 config 添加路由 添加IIS集成当我们想要将应用程序托管到IIS中时,我们需要添加UseIISIntegration()方法,该方法将IIS指定为外部Web服务器。
UseStartup
Build()方法返回一个IWebHost实例,而Run()方法则启动Web应用程序,直到它停止。
