如何清除 WebApplicationBuilder.CreateBuilder() 中的默认值?

jam*_*art 2 .net c#

在 .NET 6 / 7 Web 项目中,默认构建器在第一行使用

var builder = WebApplicationBuilder.CreateBuilder();
Run Code Online (Sandbox Code Playgroud)

然后,该构建器包含“appsettings.json”和“appsettings.Development.json”等配置。

文档说:

...使用预配置的默认值初始化 WebApplication 类的新实例

但我不想要这些默认值。我想摆脱 appsettings 和 appsettings.development。

我曾经能够使用 builder.HostClear或其他东西在较低版本的 .NET 中执行此操作,但现在看来我只能添加到这些默认配置中?或者我是否必须使用旧的类库来完全控制配置等?

小智 5

您可以清除它们:

var builder = WebApplication.CreateBuilder(args);
builder.Host.ConfigureAppConfiguration((hostingContext, config) =>
{
    config.Sources.Clear();
});
Run Code Online (Sandbox Code Playgroud)