在ASP.NET Core中存取儲存在appsettings.json檔案中的配置數據,可以使用配置建構器或選項模式。
方法一:使用ConfigurationBuilder.GetValue
方法二:使用ConfigurationBinder
1. 定義配置類別
2. 註冊設定實例
3. 注入IOptions
appsettings.json:
<code class="language-json">{ "ConnectionStrings": { "DefaultConnection": "Server=localhost;Database=MyDatabase" }, "AppIdentitySettings": { "User": { "RequireUniqueEmail": true }, "Password": { "RequiredLength": 8 } } }</code>
Startup.cs:
<code class="language-csharp">public void ConfigureServices(IServiceCollection services) { var connectionStringSection = Configuration.GetSection("ConnectionStrings"); services.Configure<ConnectionStringSettings>(connectionStringSection); var appIdentitySettingsSection = Configuration.GetSection("AppIdentitySettings"); services.Configure<AppIdentitySettings>(appIdentitySettingsSection); }</code>
Controller.cs:
<code class="language-csharp">public class HomeController : Controller { private readonly AppIdentitySettings _appIdentitySettings; public HomeController(IOptions<AppIdentitySettings> appIdentitySettings) { _appIdentitySettings = appIdentitySettings.Value; } public IActionResult Index() { var requiredLength = _appIdentitySettings.Password.RequiredLength; // ... } }</code>
請注意,以上程式碼片段中ConnectionStringSettings
和AppIdentitySettings
需要您自行定義對應的C#類別來符合appsettings.json
中的結構。 這兩種方法提供了靈活的方式來存取您的應用程式配置。 選擇哪種方法取決於您的偏好和應用程式的複雜性。
以上是如何從 ASP.NET Core 中的 appsettings.json 存取配置值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!