Configuration providers
A configuration provider is an implementation of IConfigurationProvider
that is created by a configuration source, which is an implementation of IConfigurationSource
. The configuration provider then reads the data from somewhere and provides it via Dictionary
.
To add a custom or third-party configuration provider to ASP.NET Core, you will need to call the Add
method on ConfigurationBuilder
and insert the configuration source. This is just an example:
// add new configuration source builder.Configuration.Add(new MyCustomConfigurationSource { SourceConfig = //configure whatever source Optional = false, ReloadOnChange = true });
Usually, you would create an extension method to add the configuration source more easily, as illustrated here:
builder.Configuration.AddMyCustomSource("source", optional: false, reloadOnChange: true);
A really detailed concrete example about how to create a custom configuration provider has been written by Andrew Lock. You can find this in the Further reading section of this chapter.