ASP.NET Core 應用程式使用 appsettings.json
檔案儲存配置設置,包括資料庫連接字串和 API URL 等。然而,這些設定通常會因開發環境(本地、測試、生產)而異。為了解決這個問題,ASP.NET Core 提供了一個靈活的機制,可以根據建置配置載入不同的 appsettings
檔案。
解決方案涉及建立多個 appsettings
文件,例如 appsettings.Production.json
和 appsettings.Development.json
。每個檔案包含特定於對應環境的配置設定。
為了自動載入對應的 appsettings
文件,可以使用 ASP.NET Core 的 Host.CreateDefaultBuilder
方法。此方法會根據以下來源初始化配置對象,順序如下:
appsettings.json
appsettings.{Environment}.json
(例如 appsettings.Development.json
)透過將 ASPNETCORE_ENVIRONMENT
環境變數設定為所需的環境(例如,「Production」或「Development」),設定係統將自動載入對應的 appsettings.{Environment}.json
檔案。
可以透過以下幾種方式設定環境變數:
.vscode/launch.json
> env
以下是使用 Host.CreateDefaultBuilder
的範例:
<code class="language-csharp">WebHost.CreateDefaultBuilder(args) .UseStartup<Startup>() .Build();</code>
在 Startup
類別中,設定物件會自動注入:
<code class="language-csharp">public class Startup { public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } }</code>
透過此機制,ASP.NET Core 應用程式可以輕鬆地根據建置環境載入不同的配置設置,確保在執行期間使用適當的值。
以上是ASP.NET Core如何根據不同的建置環境自動載入配置設定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!