Skip to content

Repository files navigation

Extensions.Configuration

CodeFactor

Description

This is a umbrella package for two seperate packages

  • Extensions.Configuration.Sources.Objects
  • Extensions.Configuration.Resolver

Installation

dotnet add package Extensions.Configuration

Extensions.Configuration.Sources.Objects

Description

This package adds functionality to Microsoft.Extensions.Configuration, to use objects as configuration source.

Installation

dotnet add package Microsoft.Extensions.Configuration
dotnet add package Extensions.Configuration.Sources.Objects

Usage

usingMicrosoft.Extensions.Configuration;varconfiguration=newConfigurationBuilder.AddObject(new{K1="V1"}).Build();varval=configuration["K1"];// Returns "V1"

Nesting is supported

varconfiguration=newConfigurationBuilder.AddObject(new{K1=new{K2="V1"}}}).Build();varval=configuration["K1:K2"];// Returns "V1"

Extensions.Configuration.Resolver

Description

This package adds functionality to Microsoft.Extensions.Configuration, to resolve substitutions within configuration entries.

Installation

dotnet add package Microsoft.Extensions.Configuration
dotnet add package Extensions.Configuration.Resolver

Usage

Examplary json configuration:

{
"AppName": "MyApp",
"UserSettings": "${HOMEPATH}/.{$env:AppName}/settings.json"
}
usingMicrosoft.Extensions.Configuration;varconfiguration=newConfigurationBuilder.AddJsonFile(...).AddEnvironmentVariables().Build();varuserSettingsResolved=configuration.ResolveValue("UserSettings");// Returns e.g.: "C:\Users\MyUser\.MyApp\settings.json"

Remarks

Supported placeholders:

{$env:KEY}, ${KEY}, $(KEY), %KEY%

About

Provides extension methods for Microsoft.Extensions.Configuration.IConfiguration

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages