最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.net?6精簡版webapi教程及熱重載、代碼自動反編譯演示

 更新時間:2021年12月01日 15:04:22   作者:WeskyNet  
這篇文章介紹了.net?6精簡版webapi教程及熱重載、代碼自動反編譯演示,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言:

.net6LTS版本發(fā)布已經(jīng)有若干天了。此處做一個關(guān)于使用.net6開發(fā)精簡版webapi(minimalapi)的入門教程,以及VS2022上面的兩個強(qiáng)大的新技能(熱重載、代碼自動反編譯)的順帶演示。

1、新建一個項(xiàng)目。此處就命名為SomeExample:

2、選擇.net6版本,并且此處先去掉HTTPS配置以及去掉使用控制器的選項(xiàng):

3、創(chuàng)建完成以后,原始畫面如下所示。并且,解決方案一欄只剩下program文件,其他文件都被精簡掉了。并且沒有Main函數(shù)入口和命名空間等。

4、接下來開始做幾個簡單的webapi方法案例。先刪掉原有的,替換為自定義的來個webapi方法,一個Get,一個Post。具體代碼如下圖所示。

5、運(yùn)行以后,會打開自帶的swagger頁面。大佬們可以自行比對代碼部分和swagger部分的一些特點(diǎn)。

6、執(zhí)行HelloWorld這個Get方法的執(zhí)行結(jié)果,如下圖所示。

7、執(zhí)行HelloMiniApi這個Post方法的執(zhí)行結(jié)果,如下圖所示。

8、Api根據(jù)不同的用途,在swagger展示上面,咱們還可以對它進(jìn)行一些分類。分類通過設(shè)置Tags標(biāo)簽來實(shí)現(xiàn),具體設(shè)置內(nèi)容:在方法的末尾設(shè)置WithTags,里面指定分類的顯示的名稱。運(yùn)行以后的swagger展示效果和有關(guān)代碼,如下圖所示。

9、對api方法進(jìn)行分代碼文件管理。如果API方法很多,全寫在program里面也不現(xiàn)實(shí)。所以下面做個拓展。新建用于測試使用的靜態(tài)類TestService,并且實(shí)現(xiàn)一個靜態(tài)方法TestApi。其中,方法的參數(shù)必須是thisWebApplication。然后就可以通過傳入的參數(shù),來拓展實(shí)現(xiàn)webapi,例如此處新增一個ServiceApi的api方法,以及有關(guān)其他實(shí)現(xiàn),如下圖所示。

10、新增拓展的api以后,需要在program文件里面引用使用,詳細(xì)內(nèi)容如下圖所示。

11、運(yùn)行以后的swagger展示圖。

12、測試下執(zhí)行結(jié)果,返回預(yù)期結(jié)果,說明測試成功。

13、測試下VS2022熱重載的功能,在返回值里面進(jìn)行修改,然后點(diǎn)擊熱重載小火苗按鈕進(jìn)行熱更新。

14、熱更新以后,不需要重新編譯,直接在swagger展示頁對剛才設(shè)置的api方法進(jìn)行調(diào)用,調(diào)用結(jié)果如下圖所示,說明熱重載更新成功。將來遇到需要調(diào)試的代碼時候,大佬們都可以很方便地進(jìn)行熱更新,無需重新編譯,可以大大提高效率。

15、接下來是依賴注入的驗(yàn)證測試。新增一個測試服務(wù)類TestDependencyInjection,具體實(shí)現(xiàn)內(nèi)容如圖所示。

16、TestDependencyInjection對應(yīng)的接口ITestDependencyInjection內(nèi)容:

17、在program文件里面,對上面的服務(wù)進(jìn)行注冊。此處注冊一個單例實(shí)例,具體代碼如下圖展示。

18、接下來是驗(yàn)證依賴注入是否成功。此處我在ServiceApi這個webapi方法里面進(jìn)行注入。注入需要注意事項(xiàng):在webapi方法的委托類型的參數(shù)里面,第一個參數(shù)必須是HttpContext;然后后面是自己的參數(shù),此處是注入服務(wù)的接口。并且在api方法里面調(diào)用了show方法進(jìn)行驗(yàn)證。

19、運(yùn)行程序,在swagger展示頁面點(diǎn)擊執(zhí)行對應(yīng)的webapi方法,并查看結(jié)果。如下圖所示,輸出show方法里面的內(nèi)容,代表依賴注入成功。

20、再擴(kuò)展個VS2022的隱藏技能:引用的第三方或者nuget包時候(不限制.net版本),在對應(yīng)的封裝的類或者方法上面,按F12,可以直接進(jìn)入到反編譯以后的代碼里面去,可以看到封裝的源碼。例如此處以UseSwagger為例,在此處按F12進(jìn)去瞅瞅究竟。

21、正常情況下咱們應(yīng)該F12進(jìn)去只能看見屬性名稱、方法名稱,看不到具體實(shí)現(xiàn)。而現(xiàn)在是可以看到具體實(shí)現(xiàn)的代碼的。如下圖所示,方法里面的具體代碼都有,也可以繼續(xù)進(jìn)一步F12去看底層的代碼。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • ASP.NET中Image控件使用詳解

    ASP.NET中Image控件使用詳解

    本文詳細(xì)介紹了Image控件的使用方法,用實(shí)例演示了Image控件的用法,希望對大家有所幫助。
    2016-04-04
  • ASP.NET中 TextBox 文本輸入框控件的使用方法

    ASP.NET中 TextBox 文本輸入框控件的使用方法

    TextBox 控件為用戶提供了一種向 ASP.NET 網(wǎng)頁中鍵入信息(包括文本、數(shù)字和日期)的方法。
    2016-04-04
  • WPF綁定Binding用法

    WPF綁定Binding用法

    這篇文章介紹了WPF綁定Binding用法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • ASP.NET?Core中的wwwroot文件夾

    ASP.NET?Core中的wwwroot文件夾

    這篇文章介紹了ASP.NET?Core中的wwwroot文件夾,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • ASP.NET?Core命名空間System.Text.Encodings.Web介紹

    ASP.NET?Core命名空間System.Text.Encodings.Web介紹

    這篇文章介紹了ASP.NET?Core命名空間System.Text.Encodings.Web,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • 如何在WebForm中使用javascript防止連打(雙擊)

    如何在WebForm中使用javascript防止連打(雙擊)

    如何在WebForm中使用javascript防止連打(雙擊)...
    2007-01-01
  • ASP.NET?CORE基礎(chǔ)教程

    ASP.NET?CORE基礎(chǔ)教程

    本文詳細(xì)講解了ASP.NET?CORE的基礎(chǔ)教程,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • AjaxControlToolKit CalendarExtender(日歷擴(kuò)展控件)的使用方法

    AjaxControlToolKit CalendarExtender(日歷擴(kuò)展控件)的使用方法

    使用方法很簡單,就不啰嗦那么多了 翻譯過來就是 日歷擴(kuò)展控件吧 配合TextBox控件使用只要TextBox獲的焦點(diǎn)就會顯示出來日歷
    2008-10-10
  • Blazor頁面組件用法介紹

    Blazor頁面組件用法介紹

    這篇文章介紹了Blazor頁面組件的用法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01
  • WPF控件模板與其觸發(fā)器

    WPF控件模板與其觸發(fā)器

    這篇文章介紹了WPF控件模板與其觸發(fā)器,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01

最新評論

栖霞市| 黄平县| 若尔盖县| 苏尼特右旗| 徐闻县| 于都县| 甘洛县| 汶上县| 灵璧县| 平武县| 五家渠市| 舟山市| 昭苏县| 鹰潭市| 乡宁县| 太仓市| SHOW| 栾川县| 大渡口区| 平南县| 冕宁县| 义马市| 衡东县| 郴州市| 柳河县| 达日县| 息烽县| 桐乡市| 海城市| 泌阳县| 台东县| 宜宾市| 仁布县| 五华县| 和林格尔县| 禄劝| 桐梓县| 建瓯市| 博客| 修武县| 印江|