AppSetting.json
當我們使用空項目模板或Razor頁面或MVC模板或Web API模板創建ASP.NET Core Web應用程序時,Visual Studio會自動為我們創建appsettings.json文件,如下圖所示。
appsettings.json文件是一個應用程序配置文件,用於存儲配置設置,例如數據庫連接字符串,任何應用程序范圍的全局變量等。如果打開ASP.NET Core appsettings.json文件,則默認情況下會看到以下代碼 這是由Visual Studio創建的。
現在,在該文件中添加一個名為MyName的鍵。 為此,請如下所示修改appsettings.json文件。
由於它是JSON文件,因此您需要以鍵值對的形式存儲值。
訪問AppSetting.json
若要訪問Startup類中的配置信息,需要使用ASP.NET Core框架提供的IConfiguration服務。
因此,只需要做的只是通過Startup類的構造函數注入IConfiguration服務。
為此,請修改Startup.cs文件中存在的Startup類,如下所示。
首先,我們創建了一個IConfiguration _config類型的私有變量(此IConfiguration接口屬於Microsoft.Extensions.Configuration命名空間,因此請首先使用此命名空間)。
然后,通過構造函數依賴項注入,我們注入IConfiguration對象並將其存儲在私有變量config中。 以下代碼。
然后,我們使用IConfiguration服務實例訪問配置變量,即MyName, 以下代碼。
現在運行該應用程序,您應該在瀏覽器中看到預期的值,如下圖所示。
訪問配置的默認順序是什么?
為同一鍵讀取各種配置源的默認順序如下:
- appsettings.json,
- appsettings.{Environment}.json
- 用戶設置
- 環境變量
- 命令行參數
如您所見,Program類的Main()方法調用CreateHostBuilder()方法。 然后,CreateHostBuilder()方法在Host類上調用CreateDefaultBuilder()方法。
此CreateDefaultBuilder()方法是設置讀取所有配置源的默認順序的方法。
如果需要,還可以更改此默認順序,或者即使您願意,也可以添加自己的自定義配置源以及現有的配置源。