Microsoft.Extensions.Configuration 10.0.0
About
Microsoft.Extensions.Configuration is combined with a core configuration abstraction under Microsoft.Extensions.Configuration.Abstractions that allows for building different kinds of configuration providers to retrieve key/value pair configuration values from in the form of IConfiguration. There are a number of built-in configuration provider implementations to read from environment variables, in-memory collections, JSON, INI or XML files. Aside from the built-in variations, there are more shipped libraries shipped by community for integration with various configuration service and other data sources.
Key Features
- In-memory configuration provider
- Chained configuration provider for chaining multiple confiugration providers together.
- Base types that implement configuration abstraction interfaces that can be used when implementing other configuration providers.
How to Use
using Microsoft.Extensions.Configuration;
var configurationBuilder = new ConfigurationBuilder();
configurationBuilder.AddInMemoryCollection(
new Dictionary<string, string?>
{
["Setting1"] = "value",
["MyOptions:Enabled"] = bool.TrueString,
});
configurationBuilder.AddInMemoryCollection(
new Dictionary<string, string?>
{
["Setting2"] = "value2",
["MyOptions:Enabled"] = bool.FalseString,
});
var config = configurationBuilder.Build();
// note case-insensitive
Console.WriteLine(config["setting1"]);
Console.WriteLine(config["setting2"]);
// note last in wins
Console.WriteLine(config["MyOptions:Enabled"]);
Main Types
The main types provided by this library are:
Microsoft.Extensions.Configuration.ConfigurationBuilderMicrosoft.Extensions.Configuration.ConfigurationManagerMicrosoft.Extensions.Configuration.ConfigurationRootMicrosoft.Extensions.Configuration.ConfigurationSection
Additional Documentation
Related Packages
- Microsoft.Extensions.Configuration.Binder
- Microsoft.Extensions.Configuration.CommandLine
- Microsoft.Extensions.Configuration.EnvironmentVariables
- Microsoft.Extensions.Configuration.FileExtensions
- Microsoft.Extensions.Configuration.Ini
- Microsoft.Extensions.Configuration.Json
- Microsoft.Extensions.Configuration.UserSecrets
- Microsoft.Extensions.Configuration.Xml
Feedback & Contributing
Microsoft.Extensions.Configuration is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.
Showing the top 20 packages that depend on Microsoft.Extensions.Configuration.
| Packages | Downloads |
|---|---|
|
Microsoft.Extensions.Configuration.Binder
Functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration.
|
51 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
49 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
This library has been replaced by the following new Azure SDK.
https://www.nuget.org/packages/Azure.Extensions.AspNetCore.Configuration.Secrets
It is recommended that you move to the new package.
|
49 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
|
49 |
|
Microsoft.Extensions.Logging
Logging infrastructure default implementation for Microsoft.Extensions.Logging.
|
48 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
48 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
This package was built from the source code at https://github.com/aspnet/Extensions/tree/9bc79b2f25a3724376d7af19617c33749a30ea3a
|
48 |
|
Microsoft.Extensions.Configuration.FileExtensions
Extension methods for configuring file-based configuration providers for Microsoft.Extensions.Configuration.
|
48 |
|
Microsoft.Extensions.Configuration.EnvironmentVariables
Environment variables configuration provider implementation for Microsoft.Extensions.Configuration.
|
48 |
|
Microsoft.Extensions.Configuration.CommandLine
Command line configuration provider implementation for Microsoft.Extensions.Configuration.
|
47 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
This library has been replaced by the following new Azure SDK.
https://www.nuget.org/packages/Azure.Extensions.AspNetCore.Configuration.Secrets
It is recommended that you move to the new package.
|
47 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
46 |
|
Microsoft.AspNetCore.Hosting
ASP.NET Core hosting infrastructure and startup logic for web applications.
|
46 |
|
Microsoft.AspNetCore.Hosting
ASP.NET Core hosting infrastructure and startup logic for web applications.
This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/be0a4a7f4cf06cbd6ec714bd1d9afee6bdb040a8
|
46 |
|
Microsoft.Extensions.Configuration.Ini
INI configuration provider implementation for Microsoft.Extensions.Configuration.
|
46 |
|
Microsoft.Extensions.Configuration.Binder
Functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration.
|
46 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
|
46 |
|
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
When using NuGet 3.x this package requires at least version 3.4.
|
45 |
.NET Framework 4.6.2
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Primitives (>= 10.0.0)
.NET 8.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Primitives (>= 10.0.0)
.NET 9.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Primitives (>= 10.0.0)
.NET 10.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Primitives (>= 10.0.0)
.NET Standard 2.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Primitives (>= 10.0.0)