簡體   English   中英

開發人員如何擁有不同的 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.jsonappSettings.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM