亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET Core 中的Main方法詳解

發布時間:2020-10-12 06:38:08 來源:腳本之家 閱讀:196 作者:cool2feel 欄目:編程語言

在 ASP.NET Core 項目中,我們有一個名為Program.cs的文件。在這個文件中,我們有一個public static void Main()方法 。

public class Program
{
  public static void Main(string[] args)
  {
    CreateWebHostBuilder(args).Build().Run();
  }

  public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
      .UseStartup<Startup>();
}

如果您對傳統的.NET Framework 有任何使用經驗,則知道控制臺應用程序具有 Main()方法,它是該控制臺程序的入口。

但今天,我們正在創建一個 ASP.NET Core Web 應用程序而不是控制臺應用程序。因此,我們想到的一個顯而易見的問題是。 為什么我們也會有一個Main()方法?

所以這個知識點,要記住的。ASP.NET Core 應用程序最初作為控制臺應用程序啟動,而Program.cs文件中的Main()方法就是入口。

因此,當運行時執行我們的應用程序時,它會查找此Main()方法以及執行配置開始的地方。

這個Main()方法配置 asp.net Core 并啟動它,此時,它成為一個 asp.net Core Web 應用程序。因此,如果你跟蹤一下Main()方法,它會調用 CreateWebHostBuilder()方法傳遞命令行參數。

然后你就可以看到,CreateWebHostBuilder()方法返回一個實現 IWebHostBuilder 的對象。 在此對象上,調用Build()方法,會將我們的 ASP.NET Core 應用程序生成并且托管到服務器上。 在服務器上的程序調用Run() 方法,該方法運行后Web 應用程序并開始偵聽傳入的 HTTP 請求。 CreateWebHostBuilder()方法調用靜態類WebHost中的靜態方法CreateDefaultBuilder()。 CreateDefaultBuilder()方法會在服務器上創建一個已經預設置好的默認值。 CreateDefaultBuilder()方法執行多項操作來創建服務器.

我們在后面的視頻中詳細討論CreateDefaultBuilder()中的所有方法。

而現在你只需要了解CreateDefaultBuilder()方法是用于在服務器上創建程序配置的默認值而存在。 它作為設置服務器的一部分,還使用了IWebHostBuilder接口中的UseStartup()的擴展方法來配置Startup類。 如果您不熟悉擴展方法的概念, 那么你該去補課了。

按照微軟的規則,ASP.NET Core 中的啟動類名為Startup。 這個類有 2 種方法。

public class Startup
{
  public void ConfigureServices(IServiceCollection services)
  { }

  public void Configure(IApplicationBuilder app, IHostingEnvironment env)
  {
    if (env.IsDevelopment())
    {
      app.UseDeveloperExceptionPage();
    }

    app.Run(async (context) =>
    {
      await context.Response.WriteAsync("Hello World!");
    });
  }
}

C#

Startup 類雖然只有兩個方法,但是這兩個方法做了非常重要的事情:

ConfigureServices()方法配置應用程序所需的服務

Configure()方法配置應用程序的請求處理管道

我們理解這兩種方法的作用是非常重要。

在后面的文章中,會大量使用這兩種方法。到時候需要大家多次加深印象。

感謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

利川市| 卢湾区| 绥化市| 常宁市| 洛阳市| 土默特右旗| 平遥县| 宝坻区| 个旧市| 建湖县| 阜康市| 徐闻县| 兴隆县| 武宣县| 吴桥县| 义马市| 治多县| 金山区| 自治县| 淳安县| 水富县| 泽普县| 白沙| 杂多县| 呈贡县| 阿合奇县| 翁牛特旗| 贵溪市| 孟州市| 西平县| 达州市| 斗六市| 筠连县| 周口市| 嘉荫县| 海原县| 波密县| 玉环县| 久治县| 内乡县| 墨江|