︿
Top

2023年4月11日 星期二

ASP.NET Core 6 使用 Token-based 身份認證與授權 (JWT) 演練

1. 前言

本文主要參考 (Will保哥) 如何在 ASP.NET Core 6 使用 Token-based 身份認證與授權 (JWT) 的文章為基礎作演練.
保哥的文章是以 Minimal API + .NET CLI + Visual Studio Code 為基礎.
筆者的演練係以 Controller/Action API + Visual Studo 2022 為演練的對象; 過程中有遇到一些錯誤, 也一併記錄下來 (有些可能蠻低級的錯誤 ^^), 以供筆者或其它有興趣者留作參考.
本文僅處理產出 JWT access token 及驗證為範圍, 不含 JWT refresh token, 登出 的功能.

原始程式及文件可參考 GitHub.

2023年2月15日 星期三

ASP.NET Core 6 MVC 相依性注入之物件生命週期範例

An example for DI instance lifetime in ASP.NET Core 6 MVC

前言

在 ASP.NET Core 6 的開發框架下, 相依性注入 (Dependency Injection) 是跟以往 ASP.NET MVC 5 有很大不同的其中一項技術.

本篇文章, 主要是模仿參考文件 [1] 的範例, 進行演練.

在經由演練之後, 對於 ASP.NET Core 6 MVC 內建的 DI Container 套件, 也多了一份認識.

原始程式可參考 GitHub 的連結

2022年11月5日 星期六

ASP.NET Core 6 cross-platform beginner study (asp.net core 6 跨平台初探)

前言

話說 ASP.NET Core 6 支援跨平台, 但平常都在進行 Windows 平台專案的開發, 對 Linux 並不是很熟悉, 故需實際驗證, 才知道會有那些坑要解決或避開.

個人只是剛接觸 ASP.NET Core 6, 本篇文章只是將個人還到的跨平台問題, 作一些初步的整理; 若有不正確之處, 還請多加指正.

可能個人學藝不精, 遇到了 5 個關卡, 最後一個關卡還沒有時間處理. 日後如有時間再行驗證.

  • 關卡1: 自簽的開發憑邆不被 firefox 信任
  • 關卡2: 處理 HTTP 被強制導向 HTTPS 的狀況
  • 關卡3: 跨越 localhost 的限制
  • 關卡4: 跨越主機的限制
  • 關卡5: 採用真正的憑證

2022年10月25日 星期二

行尾結束字元探討(End of Line) PART 2 : Vs Code

前言

在前一篇 行尾結束字元探討 PART 1 : Git, 針對 行尾結束字元(End of Line) 在 Git 上的一些議題, 作了一些討論.

本篇再針對 End of Line 在 Vs Code 上的一些議題, 作一些討論.

經過實測發現, 雖然前一篇提到出現 "warning: in the working copy of '.gitignore', LF will be replaced by CRLF the next time Git touches it" 的訊息, 其實對整個版控並無影響, 只是一個提醒而已; 但這整個過程, 將以前沒有注意到的細節, 作了一次探討; 也第一次在 Ubuntu 上安裝 ASP.NET Core 6.0 SDK 及 Visual Studio Code, 並在 Ubuntu 上進行程式修及版控, 也算是有收穫了.

行尾結束字元探討(End of Line) PART 1 : Git

前言

最近在 study vs code + dotne CLI 的開發方式, 當然也括 git 的部份. 當手工下達 git add . 指令時, 會出現 LF will be replaced by CRLF the next time Git touches it 的警告訊息.

PS D:\22-Projects.Git\52-ASP.NET Core\MvcFriends> git add .
warning: in the working copy of '.gitignore', LF will be replaced by CRLF the next time Git touches it
warning: in the working copy of '.vscode/launch.json', LF will be replaced by CRLF the next time Git touches it
warning: in the working copy of 'wwwroot/lib/bootstrap/dist/css/bootstrap-grid.css', LF will be replaced by CRLF the next time Git touches it
warning: in the working copy of 'wwwroot/lib/bootstrap/dist/css/bootstrap-grid.min.css', LF will be replaced by CRLF the next time Git touches it
warning: in the working copy of 'wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.css', LF will be replaced by CRLF the next time Git touches it
warning: in the working copy of 'wwwroot/lib/bootstrap/dist/css/bootstrap-grid.rtl.min.css', LF will be replaced by CRLF the next time Git touches it

2022年3月14日 星期一

.NET 6 Console Program with EF Core From Existing Database


0. 前言


最近剛好有一些空檔, 由 .NET Framework 4.x 跨入 .NET Core 的世界, 目前 .NET Core 最新的 LTS (長期支援版本) 為 .NET 6. 而最簡單的程式, 就是 Console 主控台程式.

因此, 本文將撰寫一支 Console 主控台程式, 利用 Entity Framework Core (以下簡稱 EF Core)的工具, 將資料庫的 Table 轉為 C# 的 class, 並由前述主控台程式, 對資料庫進行讀取.

以下茲分幾個章節, 進行說明.

最後並附上 結論參考文件.

相關程式 可由此下載.