The Will Will Web

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

分享幾個發行 .NET 應用程式的奇技淫巧

無論你是開發 Console 主控台應用程式,或是 ASP․NET Core 網頁應用程式,最終都會需要發行部署,而一個簡單的 dotnet publish 卻潛藏著許多不為人知的用法。今天這篇文章我打算來梳理一下我過往曾經用過的發行技巧,做個詳細的用法整理。

... 繼續閱讀 ...

如何在現有 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 內容。

... 繼續閱讀 ...