日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

《从零开始学ASP.NET CORE MVC》:ASP.NET Core 中的 Main方法(5)

發(fā)布時間:2023/12/4 asp.net 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《从零开始学ASP.NET CORE MVC》:ASP.NET Core 中的 Main方法(5) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.


本文出自《從零開始學(xué)ASP.NET CORE MVC》
推薦文章:ASP.NET Core Web 項目文件

ASP.NET Core 中的 Main方法

一個開始專心寫字的人


在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>();
}

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

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

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

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

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

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

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

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

按照微軟的規(guī)則,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!");
});
}
}

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

  • ConfigureServices()方法配置應(yīng)用程序所需的服務(wù)

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

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

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


硬廣專區(qū)



如果您覺得我的文章質(zhì)量還不錯,歡迎打賞,也可以訂閱我的視頻哦

未得到授權(quán)不得擅自轉(zhuǎn)載本文內(nèi)容,52abp.com保留版權(quán)

文字版目錄:?https://www.52abp.com/Wiki/mvc/latest/1.Intro?

代碼托管地址:https://gitee.com/aiabpedu
知乎專欄:https://zhuanlan.zhihu.com/52abp

交流QQ群:952387474《微軟MVP帶你學(xué)ASP.NET?CORE》
【收費】騰訊課堂:?https://ke.qq.com/course/392589?tuin=2522cdf3?
【免費】youtube視頻專區(qū):http://t.cn/Ei0F2EB?
【免費】B站:?https://space.bilibili.com/2954671?
免費的更新慢,收費的更新快,僅此而已。就這樣。
?


「好看」的人都【在看】↓↓↓





總結(jié)

以上是生活随笔為你收集整理的《从零开始学ASP.NET CORE MVC》:ASP.NET Core 中的 Main方法(5)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。