Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Determinadas APIs relacionadas a Microsoft.Extensions.Configuration que foram marcadas como RequiresUnreferencedCodeAttribute também foram anotadas para preservar pelo menos alguns dos membros necessários ao cortar. Isso fez com que a API funcionou parcialmente durante o corte, enquanto ainda gerava avisos de corte. As anotações agora são removidas completamente. Os usuários são incentivados a migrar para o gerador de origem que funciona de forma confiável com o corte.
Versão introduzida
.NET 10
Comportamento anterior
Anteriormente, as APIs afetadas trabalhavam com alguns casos de uso limitados ao gerar avisos de corte no momento da publicação. Essas APIs foram anotadas para preservar pelo menos alguns dos membros necessários ao serem cortadas, tornando a API parcialmente funcional em cenários cortados.
Novo comportamento
A partir do .NET 10, as APIs afetadas agora funcionam com casos de uso ainda mais limitados, ao mesmo tempo em que geram avisos de corte no momento da publicação.
Tipo de mudança disruptiva
Essa alteração pode afetar a compatibilidade binária.
Motivo da alteração
As anotações foram removidas como parte de um esforço para remover os usos DynamicallyAccessedMemberTypes.All do produto.
Ação recomendada
Use o gerador de fonte de configuração de associação, que funciona de forma confiável com o corte e oferece uma alternativa segura para essas APIs.
APIs afetadas
- Microsoft.Extensions.Configuration.ConfigurationBinder.Get(IConfiguration, Type, Action<BinderOptions>)
- Microsoft.Extensions.Configuration.ConfigurationBinder.GetValue(IConfiguration, Type, String)
- Microsoft.Extensions.Configuration.ConfigurationBinder.GetValue(IConfiguration, Type, String, Object)
- Microsoft.Extensions.Configuration.ConfigurationBinder.GetValue<T>(IConfiguration, String)
- Microsoft.Extensions.Configuration.ConfigurationBinder.GetValue<T>(IConfiguration, String, T)
- Microsoft.Extensions.Configuration.ConfigurationBinder.Get<T>(IConfiguration)
- Microsoft.Extensions.Configuration.ConfigurationBinder.Get<T>(IConfiguration, Action<BinderOptions>)
- Microsoft.Extensions.Logging.Configuration.LoggerProviderOptions.RegisterProviderOptions<TOptions,TProvider>(IServiceCollection)
- Microsoft.Extensions.Logging.ConsoleLoggerExtensions.AddConsoleFormatter<TFormatter,TOptions>(ILoggingBuilder)
- Microsoft.Extensions.Logging.ConsoleLoggerExtensions.AddConsoleFormatter<TFormatter,TOptions>(ILoggingBuilder, Action<TOptions>)
- Microsoft.Extensions.DependencyInjection.OptionsBuilderConfigurationExtensions.BindConfiguration<TOptions>(OptionsBuilder<TOptions>, String, Action<BinderOptions>)
- Microsoft.Extensions.DependencyInjection.OptionsBuilderConfigurationExtensions.Bind<TOptions>(OptionsBuilder<TOptions>, IConfiguration)
- Microsoft.Extensions.DependencyInjection.OptionsBuilderConfigurationExtensions.Bind<TOptions>(OptionsBuilder<TOptions>, IConfiguration, Action<BinderOptions>)
- Microsoft.Extensions.DependencyInjection.OptionsConfigurationServiceCollectionExtensions.Configure
- Microsoft.Extensions.Options.ConfigureFromConfigurationOptions<TOptions>
- Microsoft.Extensions.Options.NamedConfigureFromConfigurationOptions<TOptions>