HostApplicationBuilder ctor 遵循的 HostApplicationBuilderSettings.Args

HostApplicationBuilder接受HostApplicationBuilderSettings对象的构造函数现在应用HostApplicationBuilderSettings.Args属性,无论DisableDefaults是被设置为true还是false

已引入的版本

.NET 8 预览版 2

以前的行为

以前,设置HostApplicationBuilderSettings.ArgsHostApplicationBuilderSettings.DisableDefaults时会忽略true属性。

新行为

从 .NET 8 开始,无论 HostApplicationBuilderSettings.Args 是设置为 HostApplicationBuilder.Configuration 还是 DisableDefaultstrue 值都会添加到 false 中。

破坏性变更的类型

此更改为行为更改

更改原因

忽略 HostApplicationBuilderSettings.Args 的行为是意外的,即使 HostApplicationBuilderSettings.DisableDefaults 设置为 true。 这是因为,如果调用方不希望将命令行参数应用于该 HostApplicationBuilder对象,则它们不会在 HostApplicationBuilderSettings 对象上设置它们。 由于调用方 确实 在设置上传递了命令行参数,因此应尊重这些参数。

如果不希望将命令行参数添加到 HostApplicationBuilder 配置,请将 HostApplicationBuilderSettings.Args 属性设置为 null

受影响的 API