[英]Serilog using appsettings.json instead of appsettings.Development.json
[英]How can developers have different appsettings.development.json settings?
我有一個主要的 web 應用程序和一個 Web API 應用程序。 (第一個應用程序調用第二個應用程序的 API。)在本地運行時,Visual Studio 配置為啟動這兩個應用程序。
我的appsettings.development.json文件在本地運行時覆蓋了API網站的URL。 這工作正常。
但是現在另一個開發人員正在他的系統上運行這些項目。 當他這樣做時,API 網站的 URL 與我系統上的不同。
這個開發人員如何在 appsettings.development.json 中配置不同的URL而不會在他簽入時覆蓋我的設置?
我假設您使用代碼版本控制工具。 我假設您使用 git。如果不是這種情況,您應該使用版本控制工具,如果不是 git,請檢查如何“忽略”特定文件。
您不應跟蹤 appSettings.development.json 並將其添加到 your.gitignore(如果 appSettings.development.json 已被跟蹤並且您需要清理它,請參閱此線程。)
那么每個開發者都會有自己的appSettings.development.json並且不會被覆蓋
HTH
您可以為此使用用戶機密。 它基本上是一個位於項目文件夾之外的 JSON 配置文件,因此它不會被簽入版本控制。 我將其用於本地數據庫連接字符串/API URL 等。
在 Visual Studio 中,您可以右鍵單擊項目並單擊管理用戶機密以打開用戶機密文件。
您可以使用不同的啟動設置,這樣您就可以為每個開發人員創建單獨的 appSetting 文件。
您可以為兩個開發人員創建appSettings.Developer1.json和appSettings.Developer2.json ,然后您需要如下修改 launchSetting.json 以使其適用於兩個開發人員
下面是示例 launchSetting.json
{
"iisSettings": {
...
},
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"Developer 1": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Developer1"
}
},
"Developer 2": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Developer2"
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.