ASP.NET Core是一個開放源碼的Web架構,以NET Runtime為基礎,支援(Model)、檢視(View)、控制器(Controller)的設計模式,來開發可執行在Windows、Linux與Mac上的網站應用程式。ASP.NET Core是一個重新設計的開發架構,非從舊版ASP.NET升級,內建支援相依性注入(dependency injection)讓程式開發更有彈性。本課程將利用Visual Studio開發工具,並使用.NET技術建立現代化、以雲端為基礎的網站應用程式。
本課程為「ASP.NET Core MVC網站開發從設計到實作Part 1」的第二階段課程,主要介紹ASP.NET Core網站應用程式開發的進階設計。了解如何實作錯誤處理、建構多國語言網頁、Web API/Minimal API開發,以及自訂Tag Helper等。讓程式開發設計人員能夠更深入的了解ASP.NET Core MVC網站程式設計。
ASP.NET Core是一個開放源碼的Web架構,除了使用MVC的設計模式來開發網站應用程式之外,還可以選擇使用Razor Page。Razor Page採用頁面控制器框架(Page controller framework),類似php、jsp、ASP.NET Web Forms,提供清晰的關注點分離(clean separation of concerns)以建立動態、資料驅動的網站,支援跨平台開發,可部署到Windows、Mac、Unix作業系統。與MVC相比,Razor Page改良MVC的缺點,更為輕量、有彈性,更為簡易容易學習,特別適合使用過ASP.NET Web Forms的開發者升級到.NET平台。本課程是一個實作課程,使用ASP.NET Core Razor Page技術,建立一個現代化的網站應用程式。
在過去設計網站應用程式,至少要學兩種程式語言,前端瀏覽器使用JavaScript,再挑選個後端伺服端技術,例如ASP.NET Core或PHP。現在.NET的框架中新增ASP.NET Core
Blazor,可以讓您取代JavaScript,從前端寫到後端都使用相同的C# 程式語言來撰寫程式碼。
Blazor是Microsoft開發的單一網頁應用程式(Single Page
Application,SPA)框架,與React、Angular和Vue.js有許多相同之處,不同點在它使用的是C#
而不是JavaScript來撰寫程式碼。Blazor開發架構分為兩種:Blazor WebAssembly與Blazor
Server。本課程是一個實作課程,從無到有一步步引導您建立一個Blazor圖書網站,以建立Blazor互動式SPA網站應用程式。
您將透過這個課程了解.NET(.NET Core)與.NET
Framework的差別,以及.NET如何真正實踐跨平台架構,您也將透過這個課程了解C#、10、11、12…的重大更新,以及如何將傳統的WPF、Windows Form專案升級到.NET。此外,您將學到Entity Framework的相關知識,還有透過.NET的API做檔案管理與資料串流的處理,同時您將學到效能的增進上使用非同步程式設計的相關技術。
另外,您將學會如何使用JSON序列化和gRPC微服務進行遠端存取。最後,本課程還將介紹背景工作服務與歷程紀錄(警告訊息、錯誤訊息的Log)以及應用程式的組態、部署與發佈,以幫助您掌握完整的應用程式開發流程。透過這些課程內容,您將能夠建立跨平台的應用程式,並學習使用各種相關的技術和工具,讓您能夠在開發應用程式的過程中更加得心應手。
使用容器的微服務架構是一個快速移植、提高效率、降低維護成本及業界最強的隔離能力的雲端架構。本課程將利用Visual Studio Code開發工具,並使用.NET 7技術建立SQL及NoSQL不同資料特性的RESTful API為基礎的Backend Docker Container。並結合其他常見的Frontend技術(AJAX|BrazorServer|Angular)的Docker Container,方便後續部署至Kubernetes(K8s)微服務架構的網站應用程式。
ASP.NET Core支援兩種方法來建立HTTP服務,分別為Web API和Minimal API。本課程主要闡述建立這些服務所需的技術和實作方式,包括C# 委派、Lambda運算式、LINQ查詢、Entity Framework Core資料庫存取、ASP.NET Core應用程式建立,以及Web API/Minimal API服務開發。此外,使用Swagger進行API文檔的自動生成和測試,並示範如何使用JavaScript來存取這些服務。最後,在Docker上運行服務。
.NET
MAUI並非Microsoft開發平台上的新生兒,它的前身是由Xamarin.Forms演進而來,提供更廣泛的原生控制項的支援,使得開發人員可以更容易地在應用程式中使用和自定義原生控制項,以獲得更好的用戶體驗。它實踐了一次撰寫,四大平台遊走(Android、iOS、macOS、Windows),滿足開發人員僅須寫一次程式,使用C#
打造適用於Android、iOS、macOS和Windows的應用程式,不再為不同平台重複開發而煩惱!
在這門課程中,我們將使用C#、XAML和Visual Studio 2022來開發.NET
MAUI桌面和行動裝置應用程式。您將學習如何使用XAML定義UI介面,並深入了解各種版面配置和使用者體驗。我們將討論如何應用資源和樣式,以實現UI的一致性和共享特性。同時,您還將學會處理資料存取、與Web
API進行連接,以及使用硬體裝置功能。最後,您將了解如何部署和準備完成的應用程式。