解释 ASP.NET Core 中 Program 类的用途
一个ASP.NET核心应用同样开始一个.NET控制台应用程序。它使用文件中Main()定义的方法Program.cs作为应用程序的入口点。Main()每当您启动 Web 应用程序时,框架都会调用该方法。
在ASP.NETCore 应用程序中,该Main()方法构建并运行 Host。Host 对象是ASP.NETCore 应用程序的基本部分之一。它包含您的应用程序使用的配置和网络服务器 (Kestrel)。
程序.cs
这是Program.cs标准ASP.NETCore 应用程序中的示例文件。
using System;using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
namespace nhooo{
public class Program{
public static void Main(string[] args){
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>{
webBuilder.UseStartup<Startup>();
});
}
}
在上面的例子中,
该CreateHostBuilder()方法使用默认配置创建一个 IHostBuilder 实例。
ConfigureWebHostDefaults() 使用 WebHostBuilder 对象将应用程序配置为使用 Kestrel。
CreateDefaultBuilder() 是一种静态辅助方法,通过使用标准配置创建 IHostBuilder 来简化应用程序的创建。
UseStartup<Startup> 告诉框架使用Startup.cs该类进行配置。
配置 IHostBuilder 后,该Build()方法将创建并从 IHostBuilder 返回 IHost 的实例。但是,应用程序仍然没有侦听请求。
该Run()方法运行 IHost 并侦听 HTTP 请求。
如您所见, Program 类提供初始化代码来创建 Web 主机并侦听传入请求。大多数样板ASP.NET核心配置发生在CreateDefaultBuilder()方法中。本Startup.cs类处理特定应用程序的配置,即,通过您的应用中间件管道所需要的服务。
通常,一旦应用程序开始增长,您就不会更改 Program 类,而您将经常修改 Startup 类以添加/删除应用程序需要的服务。
以上是 解释 ASP.NET Core 中 Program 类的用途 的全部内容, 来源链接: utcz.com/z/338762.html