<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ASP.NET Core 學(xué)習(xí)手冊(cè)

          共 4060字,需瀏覽 9分鐘

           ·

          2020-07-28 17:17








          (點(diǎn)擊上方藍(lán)字,可快速關(guān)注我們)


          來(lái)源:Nate

          windsting.github.io/little-aspnetcore-book/book/


          前言


          簡(jiǎn)明 ASP.NET Core 手冊(cè)!我寫(xiě)這本小書(shū)的目的,是幫助開(kāi)發(fā)者和愛(ài)好者了解 ASP.NET Core 2.0,一個(gè)嶄新的,用于創(chuàng)建 Web應(yīng)用 和 API 的框架。


          這本 簡(jiǎn)明 ASP.NET Core 手冊(cè) 內(nèi)容組織成了一篇教程。


          你將從零開(kāi)始,完整地構(gòu)建一個(gè) 待辦事項(xiàng)(to-do) 應(yīng)用,同時(shí)了解以下內(nèi)容:


          • MVC (Model-View-Controller) 模式的基本內(nèi)容


          • 前端代碼(HTML, CSS, JavaScript)怎樣與后端代碼交互


          • 什么是依賴注入以及它的實(shí)用之處


          • 如何進(jìn)行數(shù)據(jù)庫(kù)的讀寫(xiě)操作


          • 如何添加 登錄、注冊(cè)功能,以及如何提升安全性


          • 如何部署該應(yīng)用到網(wǎng)絡(luò)上


          別擔(dān)心,你可以在 對(duì) ASP.NET Core (以及上面列表的內(nèi)容)一無(wú)所知的狀態(tài)下開(kāi)始學(xué)習(xí)。


          開(kāi)始之前


          你將要構(gòu)建的這個(gè)應(yīng)用,其完整源碼位于GitHub(https://www.github.com/nbarbettini/little-aspnetcore-todo) 。


          如果需要與你自己的代碼做對(duì)比,可任意下載。


          這本書(shū)本身也會(huì)由于修訂和內(nèi)容的增加而頻繁更新。如果你閱讀的是 PDF、電子書(shū),或者打印版,請(qǐng)查閱官網(wǎng)(littleasp.net/book)的版本更新。


          有關(guān)版本信息和更新內(nèi)容,請(qǐng)查閱本書(shū)的最后一頁(yè)。


          選擇你的語(yǔ)言閱讀


          感謝那些多語(yǔ)言的讀者,簡(jiǎn)明 ASP.NET Core 手冊(cè) 已經(jīng)被翻譯成其它語(yǔ)言:


          • The Little ASP.NET Core Book (English -- original version)


          • ASP.NET Core El Kitab? (Turkish)


          本書(shū)的目標(biāo)讀者


          如果你剛開(kāi)始編程,本書(shū)將使你了解構(gòu)建最新web應(yīng)用的模式和概念。通過(guò)從頭開(kāi)始創(chuàng)建一些東西,你將學(xué)習(xí)構(gòu)建一個(gè) web 應(yīng)用的方法(以及合理組織各模塊的方法)。盡管這個(gè)手冊(cè)不能事無(wú)巨細(xì)地講解你對(duì)編程所需的全部?jī)?nèi)容,但它將成為你的一個(gè)起點(diǎn),通向更多高級(jí)的主題。


          如果你已經(jīng)在使用諸如 Node、Python、Ruby、Go 或者 Java 之類(lèi)的后端語(yǔ)言寫(xiě)代碼,你會(huì)注意到很多熟悉的概念,比如 MVC、視圖模板和依賴注入。你將使用 C# 進(jìn)行進(jìn)行編程,但跟你先前熟知的內(nèi)容不會(huì)差異太大。


          如果你是一個(gè) ASP.NET MVC 開(kāi)發(fā)者,你將如魚(yú)得水。ASP.NET Core 增添了一些新工具并復(fù)用(及簡(jiǎn)化)了你用過(guò)的那些東西。我會(huì)在后面指出其中的部分差異。


          不論你此前在 web 編程方面經(jīng)驗(yàn)如何,本書(shū)都會(huì)傾囊相授,足以使你用 ASP.NET Core 創(chuàng)建一個(gè)簡(jiǎn)單但實(shí)用的 web 應(yīng)用。


          你將學(xué)習(xí)如何用前后端代碼實(shí)現(xiàn)設(shè)計(jì)目標(biāo),如何與數(shù)據(jù)庫(kù)交互,如何測(cè)試并部署應(yīng)用到真實(shí)環(huán)境。


          什么是 ASP.NET Core?


          ASP.NET Core 是一個(gè)由微軟創(chuàng)建的,用于構(gòu)建 web 應(yīng)用、API、微服務(wù) 的 web 框架。它使用常見(jiàn)的模式,諸如 MVC(Model-View-Controller)、依賴注入,和一個(gè)由中間件構(gòu)成的請(qǐng)求處理管線。


          它基于 Apache 2.0 許可證開(kāi)放源碼,就是說(shuō),源代碼可以自由獲取,并且歡迎社區(qū)成員以 缺陷修復(fù) 和 新功能提交 的方式進(jìn)行貢獻(xiàn)。


          ASP.NET Core 運(yùn)行在微軟的 .NET 運(yùn)行時(shí)庫(kù)上,類(lèi)似于 Java 的 虛擬機(jī)(JVM)或者 Ruby 的解釋器。有幾種語(yǔ)言(C#,Visual Basic,F(xiàn)#)可以用來(lái)編寫(xiě) ASP.NET Core 程序。C# 是最常見(jiàn)的選擇,我在本書(shū)中也會(huì)采用它。你可以在 Windows、Mac,和 Linux 上構(gòu)建并運(yùn)行 ASP.NET Core 應(yīng)用。


          又一個(gè) web 框架,需求何在?


          現(xiàn)存的 web 框架選項(xiàng)已經(jīng)很多了:Node/Express、Spring、Ruby on Rails、Django、Laravel 等等,數(shù)不勝數(shù)。ASP.NET Core 又有什么可取之處呢?


          • 速度 ASP.NET Core 很快。因?yàn)?.NET Core 是編譯運(yùn)行的,執(zhí)行速度遠(yuǎn)高于解釋執(zhí)行的語(yǔ)言,比如 JavaScript 或者 Ruby、ASP.NET Core 也已經(jīng)為多線程和異步任務(wù)作了專門(mén)的優(yōu)化。與使用 Node.js 寫(xiě)的代碼相比,執(zhí)行速度高出 5-10 倍是很正常的。


          • 生態(tài) ASP.NET Core 可能初出茅廬,但 .NET 卻已久經(jīng)考驗(yàn)。在 NuGet(.NET 的包管理系統(tǒng),類(lèi)似 npm、Ruby gems,或者 Maven)上有成千上萬(wàn)的軟件包。有現(xiàn)成的包可用來(lái)完成 JSON 反序列化、數(shù)據(jù)庫(kù)連接、PDF生成,或者幾乎你能想到的任何需求。


          • 安全性 微軟的開(kāi)團(tuán)隊(duì)很注重安全性,ASP.NET Core 從創(chuàng)建基礎(chǔ)就是安全的。它已經(jīng)自動(dòng)處理了 凈化輸入數(shù)據(jù) 和 跨域偽造請(qǐng)求(XSRF),你就不用操心這些了。你同時(shí)還享有 .NET 編譯器的靜態(tài)類(lèi)型檢測(cè)的福利,它像個(gè)時(shí)刻警惕著,還有些強(qiáng)迫癥的審校者。這樣,在使用一個(gè)變量或者某些數(shù)據(jù)時(shí),那些無(wú)意識(shí)的錯(cuò)誤就插翅難逃。


          .NET Core 和 .NET 標(biāo)準(zhǔn)


          貫穿本書(shū),你將學(xué)習(xí)有關(guān) ASP.NET Core (web 框架)的知識(shí)。我會(huì)偶爾提及 .NET 運(yùn)行時(shí)(用于運(yùn)行 .NET 代碼的支持庫(kù))。


          你可能還會(huì)聽(tīng)說(shuō) .NET Core 和 .NET標(biāo)準(zhǔn),這些命名有些混亂,所以在此做一簡(jiǎn)短的釋疑:


          .NET 標(biāo)準(zhǔn) 是一個(gè)平臺(tái)無(wú)關(guān)的接口,它定義了 .NET 中具有哪些特性和 API。.NET 標(biāo)準(zhǔn)并不等同于任何實(shí)際的代碼或者功能,僅僅是 API 的定義。.NET 標(biāo)準(zhǔn)現(xiàn)存多個(gè)不同的“版本”或者說(shuō)級(jí)別,反映出提供 API 的數(shù)量(或者說(shuō) API 所覆蓋的廣度)。比如 .NET標(biāo)準(zhǔn)2.0 的 API 數(shù)量比 .NET標(biāo)準(zhǔn)1.5 多,后者的 API 又比 .NET標(biāo)準(zhǔn)1.0 多。


          .NET Core 是可安裝在 Windows、Mac或者Linux上的 .NET 運(yùn)行時(shí)庫(kù)。它在各個(gè)操作系統(tǒng)上,使用對(duì)應(yīng)的平臺(tái)相關(guān)代碼實(shí)現(xiàn)了定義于 .NET 標(biāo)準(zhǔn)中的 API。你將要把它安裝到機(jī)器上,用來(lái)構(gòu)建和運(yùn)行 ASP.NET Core 應(yīng)用程序。


          作為對(duì)比,這里要指出, .NET Framework 是另一個(gè) .NET標(biāo)準(zhǔn) 的實(shí)現(xiàn),它只能運(yùn)行在 Windows 上。在 .NET Core 出現(xiàn)并把 .NET 推向 Mac 和 Linux 之前,它是唯一的 .NET 運(yùn)行時(shí)庫(kù)。ASP.NET Core 也可以跑在 Windows 專用的 .NET Framework 上,但我不會(huì)過(guò)多涉及這個(gè)主題。


          如果你已經(jīng)被這些命名搞糊涂了,別發(fā)愁!咱們馬上就要寫(xiě)代碼進(jìn)行實(shí)踐了。


          ASP.NET 4 開(kāi)發(fā)者注意


          如果你從沒(méi)用過(guò) ASP.NET 以前的版本,直接看下一章去吧!


          ASP.NET Core 是對(duì) ASP.NET 徹底的重寫(xiě),重點(diǎn)關(guān)注于讓該框架應(yīng)用新的開(kāi)發(fā)方法,并最終使其與 System.Web、IIS、和 Windows 解耦。


          你要是還記得 ASP.NET 4 的 OWIN/Katana 那些內(nèi)容,你就已經(jīng)學(xué)會(huì)一半了:Katana 項(xiàng)目成了 ASP.NET 5,而后者的名字最終被改成了 ASP.NET Core。


          作為 Katana 的傳承, Startup 類(lèi)成了起始和中心,Application_Start 和 Global.asax 則不復(fù)存在了。


          整個(gè)處理管線由中間件驅(qū)動(dòng),MVC 和 Web API 不再有區(qū)別:控制器可以方便的返回視圖、狀態(tài)碼,或者數(shù)據(jù)。


          依賴注入功能已經(jīng)內(nèi)置了,所以,如果你不想費(fèi)勁的話,完全可以不用再安裝并配置一個(gè)服務(wù)容器了,比如 StructureMap 或者 Ninject。整個(gè)框架已經(jīng)針對(duì)速度和運(yùn)行時(shí)效率進(jìn)行了優(yōu)化。


          好了,前言就到這兒。開(kāi)始學(xué)習(xí) ASP.NET Core 吧。


          往期推薦

          臥槽,超實(shí)用的Visual Studio插件
          2020年7月編程語(yǔ)言排行榜,C#變化不大!
          為什么.NET Web 應(yīng)用推薦使用 await、async異步編程?
          回復(fù) 【關(guān)閉】學(xué)關(guān)
          回復(fù) 【實(shí)戰(zhàn)】獲取20套實(shí)戰(zhàn)源碼
          回復(fù) 【福利】獲取最新微信支付有獎(jiǎng)勵(lì)
          回復(fù) 【被刪】學(xué)個(gè)
          回復(fù) 【訪客】學(xué)
          回復(fù) 【卡通】學(xué)制作微信卡通頭像
          回復(fù) 【python】學(xué)微獲取全套0基礎(chǔ)Python知識(shí)手冊(cè)
          回復(fù) 【2019】獲取2019 .NET 開(kāi)發(fā)者峰會(huì)資料PPT
          瀏覽 75
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  小h片| 91麻豆精品国产 | 北条麻妃在线无码 | 国产精品白丝 | 一级片视频在线播放 |