前言
今天想分享一個在 ASP .NET Core 內建的知識,有助於開發過程中,對於特定環境組態設定值,更方便的方式
在開發工具內,被中文翻譯為管理使用者密碼 ,其功能如下
個人理解就是 : 如果本機開發過程中,某些組態設定需要屬於是自己本機的值,那就可以使用這個 json 檔案,去做設定
命令行參數 > 環境變數 > User Secrets > appsettings.{Environment}.json > appsettings.json > 硬編碼的設定(直接寫在程式內)
1. Visual Studio 內,專案檔右鍵 -> 管理使用者密碼 或是 下指令,如下
2. VS Code 內,先安裝 .NET Core User Secrets 套件,完成後,找到專案檔(.csproj),右鍵即可看到 Manage User Secrets
3. 指令查看 secrets.json 資訊與安裝
dotnet user-secrets
與
dotnet user-secrets init
當此專案由某位開發者最先產生出 secrets.json 後,在專案檔內就會出現一處專屬的 UserSecretsId
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UserSecretsId>79a3edd0-2092-40a2-a04d-dcb46d5ca9ed</UserSecretsId>
</PropertyGroup>
若下一位開發者在其他電腦,也產出一個 secrets.json,那對於此專案的 UserSecretsId 就不會變(唯一)
今日結語
當我知道有這好用東西後,我發現第一個改善開發的事情是有幾個設定值只會在我本機上才會用到,對於每次開發都要在 json 檔案內改來改去,真的挺麻煩的!
所以這大大改善我開發時的困擾,非常棒! 所以也放在本系列的一篇文章內 ~
參考文章
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-8.0
https://stenbrinke.nl/blog/configuration-and-secret-management-in-dotnet/