![]() |
VOOZH | about |
dotnet add package Microsoft.Configuration.ConfigurationBuilders.Base --version 3.0.0
NuGet\Install-Package Microsoft.Configuration.ConfigurationBuilders.Base -Version 3.0.0
<PackageReference Include="Microsoft.Configuration.ConfigurationBuilders.Base" Version="3.0.0" />
<PackageVersion Include="Microsoft.Configuration.ConfigurationBuilders.Base" Version="3.0.0" />Directory.Packages.props
<PackageReference Include="Microsoft.Configuration.ConfigurationBuilders.Base" />Project file
paket add Microsoft.Configuration.ConfigurationBuilders.Base --version 3.0.0
#r "nuget: Microsoft.Configuration.ConfigurationBuilders.Base, 3.0.0"
#:package Microsoft.Configuration.ConfigurationBuilders.Base@3.0.0
#addin nuget:?package=Microsoft.Configuration.ConfigurationBuilders.Base&version=3.0.0Install as a Cake Addin
#tool nuget:?package=Microsoft.Configuration.ConfigurationBuilders.Base&version=3.0.0Install as a Cake Tool
ConfigurationBuilders are a feature of the full .Net Framework that were introduced in .Net 4.7.1. You can read about the concept in this blog post. While the ability to inject configuration at runtime now exists in .Net as of 4.7.1 with the ConfiguraitonBuilder feature, the framework itself does not ship with any pre-made builders in box.
The goal of this project is for Microsoft to provide a basic set of Configuration Builders that should make it easy for developers to leverage this feature in their apps. They are intended to address some of the basic dynamic/non-local configuration needs of applications as they move into a container and cloud focused environment.
The set of builders produced here are styled as "Key/Value Config Builders." The architecture of ConfigurationBuilder in the framework is actually quite flexible and can be leveraged to handle a great number of unique situations. To keep things as easy and as broadly applicable as possible though, this project focuses on simple key/value scenarios.
For more information about the builders featured in this project, to report bugs, or submit contributions, please refer to the github project page for MicrosoftConfigurationBuilders.
Expand mode is gone. It has been replaced by Token mode.Utils.MapPath - This was somewhat broken in ASP.Net scenarios previously. It should now reliably go against Server.MapPath() in ASP.Net scenarios. It has also been updated to fall back against the directory of the config file being processed when resolving the app root in the case of a Configuration object being created by ConfigurationManager.OpenConfiguration* API's rather than being part of a fully-initialized runtime configuration stack.System.Text.Json instead of Newtonsoft.Json.Azure.Identity by default which allows for more methods of connecting to Azure, such as User-Assigned Managed Identity, or Client Certificate-based via environment variables. Also a pair of overloads (GetCredential and GetSecretClientOptions/GetConfigurationClientOptions) have been added for users who need something more than DefaultAzureCredential with default client options can provide.ConfigurationBuilder accessing values from a ConfigurationSection other than the one which it is currently processing could result in stack overflow.optional attribute is obsolete ⇒ enabled attribute which provides more versatility. (The optional attribute is still parsed and recognized in the absence of the newer enabled attribute, but builders should migrate to use the new attribute name when possible. Installation scripts should try to handle this automatically.)charMap attribute to allow this character mapping to work with all KeyValueConfigBuilders and to be handled in an easily configurable manner.ConnectionStringsSectionHandler2 - A new section handler for the <connectionStrings> section has been included in the base package. This new handler will allow updating of both the 'connectionString' attribute as well as the 'providerName' attribute. It does require the builders and source of config data to be aware of this new ability though. The default section handler for the <connectionStrings> section has not been updated and remains as it was in previous versions, so apps wishing to take advantage of the new handler will have to wire it up in their config. More details can be found in the SectionHandlers documentation.AzureAppConfiguration nuget package version is revved to match the rest of this suite of builders, rather than being 1 major version behind. (ie, AzureAppConfiguration:3.0 now depends on Base:3.0 rather than AzureAppConfiguration:1.0 depending on Base:2.0)appSettings. Read more about it here.appSettings, these key/value configuration builders now support a lazy initialization model. Things that must happen immediately can be left in the existing Initialize(name, config) method, or builders can leverage the new LazyInitialize(name, config) method for things that can happen just before retrieving values. All builders in this project have been updated to be lazy whenever possible.Token(as of V3) mode now using the new escapeExpandedValues attribute.appSettings and connectionStrings if desired. Read more about this feature in the Section Handlers segment below.| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net471 net471 is compatible. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
This package has no dependencies.
Showing the top 5 NuGet packages that depend on Microsoft.Configuration.ConfigurationBuilders.Base:
| Package | Downloads |
|---|---|
|
Microsoft.Configuration.ConfigurationBuilders.Environment
A basic key/value Configuration Builder for the .Net Framework that draws from environment variables. |
|
|
Microsoft.Configuration.ConfigurationBuilders.UserSecrets
A basic key/value Configuration Builder for the .Net Framework that draws from a a 'secrets' file outside of source control. |
|
|
Microsoft.Configuration.ConfigurationBuilders.Azure
A set of Configuration Builders for the .Net Framework that draw from Azure resources. |
|
|
Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration
A set of Configuration Builders for the .Net Framework that draw from Azure AppConfiguration stores. |
|
|
Microsoft.Configuration.ConfigurationBuilders.Json
A basic key/value Configuration Builder for the .Net Framework that draws from a json file. |
Showing the top 2 popular GitHub repositories that depend on Microsoft.Configuration.ConfigurationBuilders.Base:
| Repository | Stars |
|---|---|
|
nacos-group/nacos-sdk-csharp
This nacos csharp sdk
|
|
|
AikidoSec/firewall-dotnet
Zen by Aikido protects your .NET app against attacks with one line of code. Get peace of mind— at runtime.
|
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0 | 3,915,212 | 4/12/2023 |
| 3.0.0-preview2 | 10,298 | 1/18/2023 |
| 3.0.0-preview1 | 39,321 | 4/1/2022 |
| 2.0.0 | 8,579,367 | 2/22/2020 |
| 2.0.0-rc | 14,229 | 1/10/2020 |
| 2.0.0-beta | 89,141 | 2/26/2019 |
| 1.0.2 | 6,120,577 | 7/9/2018 |
| 1.0.1 | 910,425 | 5/25/2018 |
| 1.0.0-preview3 | 6,712 | 5/4/2018 |
| 1.0.0-preview2 | 9,288 | 3/10/2018 |
| 1.0.0-preview | 14,335 | 11/17/2017 |