WhyConfig.NET 0.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global WhyConfig.NET --version 0.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local WhyConfig.NET --version 0.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=WhyConfig.NET&version=0.1.0
                    
nuke :add-package WhyConfig.NET --version 0.1.0
                    

WhyConfig.NET

See which .NET configuration source set a value, and which values it replaced.

Animated demo of whyconfig explaining Database:Host

Try it

Requires the .NET 10 SDK. From this repository, run:

dotnet run --project src/WhyConfig.Cli -- explain Database:Host --project path/to/YourApp --environment Development

The CLI checks the project's appsettings files, Development User Secrets, and current environment variables. Run dotnet run --project src/WhyConfig.Cli -- --help for options.

For the exact configuration of a running app, use WhyConfig.Core with its IConfigurationRoot:

using WhyConfig.Core;

var builder = WebApplication.CreateBuilder(args);
var result = ConfigExplainer.Explain(builder.Configuration, "Database:Host");
Console.WriteLine($"{result.Winner?.Provider}: {result.EffectiveValue}");
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.1.1 72 9/17/2026
0.1.0 78 9/17/2026