The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在現有 ASP.NET Core 專案加入 Seq 記錄提供者

我經常推薦 Seq 這套記錄伺服器(Log Server),如果要將 ASP.NET Core 的 Log 全部送到 Seq 儲存的話,其實非常簡單,因為官方的 Seq.Extensions.Logging 套件預設就支援 Microsoft.Extensions.Logging 的擴充,提供一個現成的 Logging Provider 讓你很方便的將 Seq 快速加入到 ASP.NET Core 之中。這篇文章我就來說說這個設定的過程。

... 繼續閱讀 ...

簡介 ASP.NET Core 資料保護 (Data Protection)

ASP.NET Core Data Protection 提供了一組加密 API (cryptographic API) 來保護資料安全,其中還自動包含了密鑰管理(key management)與密鑰更換(key rotation)等機制。這套技術主要用來長期取代 .NET Framework 的 ASP.NET 1.x ~ 4.x 中 web.config 定義的 <machineKey> 元素,我研究之後發現這套機制不但簡單好上手,背後的金鑰管理也有一定程度的複雜度,可算是相當不錯的資料保護解決方案。這篇文章我想帶大家快速上手 ASP.NET Core 資料保護機制,並透過一個簡單範例說明他的加解密的用法。

... 繼續閱讀 ...

如何透過 dotnet publish 調整 ASP․NET Core 部署到 IIS 的 Web.config 內容

其實我們在透過 dotnet publish 發行 ASP․NET Core 網站時,預設都會自動發佈一個 web.config 檔案,但是事實上這個檔案跟 Kestrel 完全沒關係,這個檔案主要是給 IIS 看的,當你想部署 ASP․NET Core 到 IIS 的時候,就一定需要這個檔案。今天這篇文章我就來說說,如何在執行 dotnet publish 命令的時候,自動調整 ASP․NET Core 部署到 IIS 的 web.config 內容。

... 繼續閱讀 ...

深入理解 ASP.NET MVC 與 ASP.NET Core MVC 擴充驗證屬性的改變

我在 2013 年的 ASP.NET MVC 開發心得分享 (24):擴充部分類別的建構子 文章中,是我第一次介紹 .NET Framework 年代的 ASP.NET MVC 如何替「實體資料模型」(Entity Data Model) 在有使用 EDMX 自動產生程式碼的情況下如何還能擴充現有的「實體模型類別」(Entity Model Class) 的「驗證屬性」(Validation Attributes)。但直到 ASP.NET Core 的 MVC 開始,作法有點改變了,這篇文章我來記錄一下這些變化的地方。

... 繼續閱讀 ...