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.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
|
52 |
|
Microsoft.Extensions.Configuration.Binder
Functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration.
|
51 |
|
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.
|
51 |
|
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
|
50 |
|
Microsoft.Extensions.Logging
Logging infrastructure default implementation for Microsoft.Extensions.Logging.
|
49 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
49 |
|
Microsoft.Extensions.Configuration.Ini
INI configuration provider implementation for Microsoft.Extensions.Configuration.
|
49 |
|
Microsoft.Extensions.Configuration.EnvironmentVariables
Environment variables configuration provider implementation for Microsoft.Extensions.Configuration.
|
49 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
48 |
|
Microsoft.Extensions.Configuration.Ini
INI configuration provider implementation for Microsoft.Extensions.Configuration.
|
48 |
|
Microsoft.Extensions.Configuration.CommandLine
Command line configuration provider implementation for Microsoft.Extensions.Configuration.
|
48 |
|
Microsoft.Extensions.Configuration.AzureKeyVault
Azure KeyVault configuration provider implementation for Microsoft.Extensions.Configuration.
|
48 |
|
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.
|
48 |
|
Microsoft.Extensions.Configuration.FileExtensions
Extension methods for configuring file-based configuration providers for Microsoft.Extensions.Configuration.
|
48 |
|
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
When using NuGet 3.x this package requires at least version 3.4.
|
47 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
47 |
|
Microsoft.Extensions.Configuration.Binder
Functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration.
|
47 |
|
Microsoft.AspNetCore.All
Provides a default set of APIs for building an ASP.NET Core application, and also includes API for third-party integrations with ASP.NET Core.
This package requires the ASP.NET Core runtime. This runtime is installed by the .NET Core SDK, or can be acquired separately using installers available at https://aka.ms/dotnet-download.
|
47 |
|
Microsoft.Extensions.Hosting
.NET Core hosting and startup infrastructures for applications.
|
46 |
.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)