Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NET核心Web应用程序最初作为控制台应用程序启动的原因_C#_.net Core_Asp.net Core Webapi_Asp.net Core 3.1 - Fatal编程技术网

C# .NET核心Web应用程序最初作为控制台应用程序启动的原因

C# .NET核心Web应用程序最初作为控制台应用程序启动的原因,c#,.net-core,asp.net-core-webapi,asp.net-core-3.1,C#,.net Core,Asp.net Core Webapi,Asp.net Core 3.1,下面是包含Main()的Program.cs文件,主要方法是.NET核心中的入口点。为什么.NET核心Web应用程序有main方法,为什么它最初作为控制台应用程序启动 public class Program { public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public sta

下面是包含
Main()
Program.cs
文件,主要方法是.NET核心中的入口点。为什么.NET核心Web应用程序有main方法,为什么它最初作为控制台应用程序启动

  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>();
                });
    }
公共类程序
{
公共静态void Main(字符串[]args)
{
CreateHostBuilder(args.Build().Run();
}
公共静态IHostBuilder CreateHostBuilder(字符串[]args)=>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder=>
{
webBuilder.UseStartup();
});
}

ASP.NET核心web应用程序实际上是一个控制台项目,它从Program类中的入口点
public static void Main()
开始执行,我们可以在这里为web应用程序创建主机。主机负责应用程序启动和生命周期管理。主机至少配置一个服务器和一个请求处理管道。主机还可以设置日志记录、依赖项注入和配置。更多详细信息,请参阅以下文章:


因为它是一个控制台应用程序。所有非WinForms/WPF netcore项目都是(保存Blazor客户端)您使用哪个IDE?@pinkfloydx33它仍然是一个web应用程序,它最初是作为控制台启动的,我的问题是为什么它作为控制台启动,即使它是一个web应用程序application@RafaelBizVisual Studio2019@VishalD . . . 也许您对这里的术语web应用程序感到困惑。你认为什么是Web应用程序?在技术方面,ASP.NET web应用程序是后端/服务器应用程序,负责呈现前端浏览器(HTML/CSS/JavaScript)或API(XML、JSON)内容。您可以配置和编译ASP.NET web应用程序以在IIS或其他web服务器中运行,但对于.NET Core,它通常是嵌入Kestrel引擎(或其他合适的web主机)的控制台应用程序,因此它可以独立于web服务器运行。