AddProvider verifica se há um provedor não nulo
Microsoft.Extensions.Logging.LoggerFactory implementa ILoggerFactory com um método AddProvider(ILoggerProvider)
. Provedores null
não são aceitos e será gerado um ArgumentNullException.
Versão introduzida
6.0 RC 1
Comportamento anterior
Anteriormente, AddProvider(ILoggerProvider) não realizava nenhuma validação do argumento provider
. Dessa forma, o método considerava null
um provedor "válido" e o adicionou à coleção de provedores.
Novo comportamento
A partir do .NET 6, provedores null
não são aceitos e AddProvider(ILoggerProvider) gera um ArgumentNullException se o argumento do provedor de log for null
. Por exemplo, o código a seguir gera uma ArgumentNullException:
var factory = new LoggerFactory();
((ILoggerFactory)factory).AddProvider(null));
Tipo de alteração interruptiva
Essa alteração pode afetar a compatibilidade da origem.
Motivo da alteração
O comportamento anterior fazia com que algumas operações na classe gerassem exceções NullReferenceException desnecessariamente. Por exemplo, o método LoggerFactory.Dispose() capturará a exceção e não fará nada.
Ação recomendada
Verifique se você não está passando um provedor null
para AddProvider(ILoggerProvider).