Microsoft.Extensions.Configuration 9.0.1

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.ConfigurationBuilder
  • Microsoft.Extensions.Configuration.ConfigurationManager
  • Microsoft.Extensions.Configuration.ConfigurationRoot
  • Microsoft.Extensions.Configuration.ConfigurationSection

Additional Documentation

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.CommandLine
Command line configuration provider implementation for Microsoft.Extensions.Configuration. This package enables you to read configuration parameters from the command line arguments of your application. You can use CommandLineConfigurationExtensions.AddCommandLine extension method on IConfigurationBuilder to add the command line configuration provider to the configuration builder.
1,617
Microsoft.Extensions.Configuration.EnvironmentVariables
Environment variables configuration provider implementation for Microsoft.Extensions.Configuration. This package enables you to read configuration parameters from environment variables. You can use EnvironmentVariablesExtensions.AddEnvironmentVariables extension method on IConfigurationBuilder to add the environment variables configuration provider to the configuration builder.
1,615
Microsoft.Extensions.Diagnostics
This package includes the default implementation of IMeterFactory and additional extension methods to easily register it with the Dependency Injection framework.
1,056
Microsoft.Extensions.Hosting
Hosting and startup infrastructures for applications.
948
Microsoft.Extensions.Configuration.FileExtensions
Provides a base class for file-based configuration providers used with Microsoft.Extensions.Configuration and extension methods for configuring them.
923
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
915
Microsoft.Extensions.Configuration.Json
JSON configuration provider implementation for Microsoft.Extensions.Configuration. This package enables you to read your application's settings from a JSON file. You can use JsonConfigurationExtensions.AddJsonFile extension method on IConfigurationBuilder to add the JSON configuration provider to the configuration builder.
913
Microsoft.Extensions.Hosting
Hosting and startup infrastructures for applications.
730
Microsoft.Extensions.Configuration.Json
JSON configuration provider implementation for Microsoft.Extensions.Configuration. This package enables you to read your application's settings from a JSON file. You can use JsonConfigurationExtensions.AddJsonFile extension method on IConfigurationBuilder to add the JSON configuration provider to the configuration builder.
728
Microsoft.Extensions.Configuration.FileExtensions
Provides a base class for file-based configuration providers used with Microsoft.Extensions.Configuration and extension methods for configuring them.
723
Microsoft.Extensions.Diagnostics
This package includes the default implementation of IMeterFactory and additional extension methods to easily register it with the Dependency Injection framework.
722
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
719
Microsoft.Extensions.Configuration.Binder
Functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration.
386
Microsoft.Extensions.Hosting
Hosting and startup infrastructures for applications.
240
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
237
Microsoft.Extensions.Configuration.CommandLine
Command line configuration provider implementation for Microsoft.Extensions.Configuration.
236
Microsoft.Extensions.Configuration.Json
JSON configuration provider implementation for Microsoft.Extensions.Configuration.
236
Microsoft.Extensions.Configuration.EnvironmentVariables
Environment variables configuration provider implementation for Microsoft.Extensions.Configuration.
236
Microsoft.Extensions.Configuration.FileExtensions
Extension methods for configuring file-based configuration providers for Microsoft.Extensions.Configuration.
234
Microsoft.Extensions.Configuration.CommandLine
Command line configuration provider implementation for Microsoft.Extensions.Configuration. This package enables you to read configuration parameters from the command line arguments of your application. You can use CommandLineConfigurationExtensions.AddCommandLine extension method on IConfigurationBuilder to add the command line configuration provider to the configuration builder.
82

https://go.microsoft.com/fwlink/?LinkID=799421

Version Downloads Last updated
9.0.1 19 01/15/2025
9.0.0 89 11/20/2024
9.0.0-rc.2.24473.5 11 10/21/2024
9.0.0-rc.1.24431.7 6 09/23/2024
9.0.0-preview.7.24405.7 12 08/17/2024
9.0.0-preview.6.24327.7 13 07/10/2024
9.0.0-preview.5.24306.7 7 06/22/2024
9.0.0-preview.4.24266.19 9 05/24/2024
9.0.0-preview.3.24172.9 11 04/29/2024
9.0.0-preview.2.24128.5 12 03/29/2024
9.0.0-preview.1.24080.9 10 04/27/2024
8.0.0 1,701 03/25/2024
8.0.0-rc.2.23479.6 7 04/27/2024
8.0.0-rc.1.23419.4 7 04/27/2024
8.0.0-preview.7.23375.6 9 04/27/2024
8.0.0-preview.6.23329.7 10 04/27/2024
8.0.0-preview.5.23280.8 11 04/27/2024
8.0.0-preview.4.23259.5 8 04/27/2024
8.0.0-preview.3.23174.8 9 04/27/2024
8.0.0-preview.2.23128.3 13 04/27/2024
8.0.0-preview.1.23110.8 12 04/27/2024
7.0.0 245 03/26/2024
7.0.0-rc.2.22472.3 11 04/27/2024
7.0.0-rc.1.22426.10 8 04/27/2024
7.0.0-preview.7.22375.6 11 04/27/2024
7.0.0-preview.6.22324.4 10 04/27/2024
7.0.0-preview.5.22301.12 10 04/27/2024
7.0.0-preview.4.22229.4 8 04/27/2024
7.0.0-preview.3.22175.4 9 04/27/2024
7.0.0-preview.2.22152.2 9 04/27/2024
7.0.0-preview.1.22076.8 10 05/28/2024
6.0.2 7 11/20/2024
6.0.2-mauipre.1.22102.15 12 04/27/2024
6.0.2-mauipre.1.22054.8 9 04/27/2024
6.0.1 9 04/29/2024
6.0.0 20 04/29/2024
6.0.0-rc.2.21480.5 10 04/27/2024
6.0.0-rc.1.21451.13 10 04/27/2024
6.0.0-preview.7.21377.19 12 04/27/2024
6.0.0-preview.6.21352.12 9 04/27/2024
6.0.0-preview.5.21301.5 10 04/27/2024
6.0.0-preview.4.21253.7 10 04/27/2024
6.0.0-preview.3.21201.4 11 04/27/2024
6.0.0-preview.2.21154.6 9 04/27/2024
6.0.0-preview.1.21102.12 9 05/28/2024
5.0.0 10 04/29/2024
5.0.0-rc.2.20475.5 9 04/27/2024
5.0.0-rc.1.20451.14 8 04/27/2024
5.0.0-preview.8.20407.11 9 04/27/2024
5.0.0-preview.7.20364.11 10 04/27/2024
5.0.0-preview.6.20305.6 9 04/27/2024
5.0.0-preview.5.20278.1 9 04/27/2024
5.0.0-preview.4.20251.6 12 04/27/2024
5.0.0-preview.3.20215.2 8 04/27/2024
5.0.0-preview.2.20160.3 9 04/27/2024
5.0.0-preview.1.20120.4 9 04/27/2024
3.1.32 10 05/28/2024
3.1.31 12 04/29/2024
3.1.30 10 04/29/2024
3.1.29 11 04/29/2024
3.1.28 7 04/29/2024
3.1.27 8 04/29/2024
3.1.26 13 04/29/2024
3.1.25 14 04/29/2024
3.1.24 11 04/29/2024
3.1.23 9 04/29/2024
3.1.22 9 04/29/2024
3.1.21 9 04/29/2024
3.1.20 9 03/30/2024
3.1.19 12 04/29/2024
3.1.18 13 04/29/2024
3.1.17 7 04/29/2024
3.1.16 10 04/29/2024
3.1.15 13 04/01/2024
3.1.14 9 04/29/2024
3.1.13 10 04/29/2024
3.1.12 10 04/02/2024
3.1.11 10 04/29/2024
3.1.10 11 04/29/2024
3.1.9 11 04/29/2024
3.1.8 8 04/29/2024
3.1.7 11 04/29/2024
3.1.6 14 04/29/2024
3.1.5 9 04/29/2024
3.1.4 10 04/29/2024
3.1.3 376 03/26/2024
3.1.2 10 04/29/2024
3.1.1 10 04/29/2024
3.1.0 11 04/29/2024
3.1.0-preview3.19553.2 10 04/22/2024
3.1.0-preview2.19525.4 10 04/27/2024
3.1.0-preview1.19506.1 11 04/27/2024
3.0.3 10 04/29/2024
3.0.2 12 04/29/2024
3.0.1 12 04/29/2024
3.0.0 10 04/29/2024
3.0.0-rc1.19456.10 10 04/27/2024
3.0.0-preview9.19423.4 15 04/27/2024
3.0.0-preview8.19405.4 11 04/27/2024
3.0.0-preview7.19362.4 8 04/27/2024
3.0.0-preview6.19304.6 7 04/27/2024
3.0.0-preview5.19227.9 10 04/27/2024
3.0.0-preview4.19216.2 9 04/27/2024
3.0.0-preview3.19153.1 8 04/27/2024
3.0.0-preview.19074.2 10 04/27/2024
3.0.0-preview.18572.1 9 04/27/2024
2.2.0 11 04/29/2024
2.2.0-preview3-35497 10 04/27/2024
2.2.0-preview2-35157 9 04/27/2024
2.2.0-preview1-35029 12 04/19/2024
2.1.1 12 04/04/2024
2.1.0 10 04/29/2024
2.1.0-rc1-final 10 04/25/2024
2.1.0-preview2-final 11 04/12/2024
2.1.0-preview1-final 11 04/27/2024
2.0.2 9 04/29/2024
2.0.1 11 04/29/2024
2.0.0 8 04/29/2024
2.0.0-preview2-final 11 04/27/2024
2.0.0-preview1-final 8 04/27/2024
1.1.2 11 04/01/2024
1.1.1 10 04/29/2024
1.1.0 13 04/29/2024
1.1.0-preview1-final 9 04/27/2024
1.0.2 11 04/29/2024
1.0.1 11 04/29/2024
1.0.0 13 04/29/2024
1.0.0-rc2-final 11 04/25/2024
1.0.0-rc1-final 9 04/25/2024