Microsoft.Extensions.Configuration.Binder 8.0.0-preview.2.23128.3

About

Provides the functionality to bind an object to data in configuration providers for Microsoft.Extensions.Configuration. This package enables you to represent the configuration data as strongly-typed classes defined in the application code. To bind a configuration, use the Microsoft.Extensions.Configuration.ConfigurationBinder.Get extension method on the IConfiguration object. To use this package, you also need to install a package for the configuration provider, for example, Microsoft.Extensions.Configuration.Json for the JSON provider.

For more information, see the documentation: Configuration in .NET.

Example

The following example shows how to bind a JSON configuration section to .NET objects.

using System;
using Microsoft.Extensions.Configuration;

class Settings
{
    public string Server { get; set; }
    public string Database { get; set; }
    public Endpoint[] Endpoints { get; set; }
}

class Endpoint
{
    public string IPAddress { get; set; }
    public int Port { get; set; }
}

class Program
{
    static void Main()
    {
        // Build a configuration object from JSON file
        IConfiguration config = new ConfigurationBuilder()
            .AddJsonFile("appsettings.json")
            .Build();

        // Bind a configuration section to an instance of Settings class
        Settings settings = config.GetSection("Settings").Get<Settings>();

        // Read simple values
        Console.WriteLine($"Server: {settings.Server}");
        Console.WriteLine($"Database: {settings.Database}");

        // Read nested objects
        Console.WriteLine("Endpoints: ");
        
        foreach (Endpoint endpoint in settings.Endpoints)
        {
            Console.WriteLine($"{endpoint.IPAddress}:{endpoint.Port}");
        }
    }
}

To run this example, include an appsettings.json file with the following content in your project:

{
  "Settings": {
    "Server": "example.com",
    "Database": "Northwind",
    "Endpoints": [
      {
        "IPAddress": "192.168.0.1",
        "Port": "80"
      },
      {
        "IPAddress": "192.168.10.1",
        "Port": "8080"
      }
    ]
  }
}

You can include a configuration file using a code like this in your .csproj file:

<ItemGroup>
  <Content Include="appsettings.json">
    <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  </Content>
</ItemGroup>

Showing the top 20 packages that depend on Microsoft.Extensions.Configuration.Binder.

Packages Downloads
Microsoft.Extensions.Logging
Logging infrastructure default implementation for Microsoft.Extensions.Logging.
35
Microsoft.Extensions.Logging.Configuration
Configuration support for Microsoft.Extensions.Logging.
92
Microsoft.Extensions.Options.ConfigurationExtensions
Provides additional configuration specific functionality related to Options.
35
Microsoft.Extensions.Options.ConfigurationExtensions
Provides additional configuration specific functionality related to Options.
92
Microsoft.Extensions.Options.ConfigurationExtensions
Provides additional configuration specific functionality related to Options.
109
Microsoft.Extensions.Options.ConfigurationExtensions
Provides additional configuration specific functionality related to Options. This package was built from the source at: https://github.com/aspnet/Options/tree/f0873965bd22ab3ec6891f5d23f172293cfa8abe
34
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
34
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
35
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
36
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
37
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
38
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
43
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
49
Sentry.AspNetCore
Official ASP.NET Core integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
63
Sentry.Extensions.Logging
Official Microsoft.Extensions.Logging integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
34
Sentry.Extensions.Logging
Official Microsoft.Extensions.Logging integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
35
Sentry.Extensions.Logging
Official Microsoft.Extensions.Logging integration for Sentry - Open-source error tracking that helps developers monitor and fix crashes in real time.
36
Serilog.Settings.Configuration
Microsoft.Extensions.Configuration (appsettings.json) support for Serilog.
108

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

.NET Framework 4.6.2

.NET 6.0

.NET 7.0

.NET 8.0

.NET Standard 2.0

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