AddProvider comprueba si hay proveedores que no son NULL
Microsoft.Extensions.Logging.LoggerFactory implementa ILoggerFactory con un método AddProvider(ILoggerProvider)
. Los proveedores null
no se aceptan y provocarán que se genere una excepción ArgumentNullException.
Versión introducida
6.0 RC 1
Comportamiento anterior
Anteriormente, AddProvider(ILoggerProvider) no realizaba validación alguna del argumento provider
. Por lo tanto, el método consideraba que null
era un proveedor "válido" y lo agregaba a la colección de proveedores.
Comportamiento nuevo
A partir de .NET 6, los proveedores null
no se aceptan y AddProvider(ILoggerProvider) produce una excepción ArgumentNullException si el argumento del proveedor de registro es null
. Por ejemplo, el código siguiente genera una excepción ArgumentNullException:
var factory = new LoggerFactory();
((ILoggerFactory)factory).AddProvider(null));
Tipo de cambio importante
Este cambio puede afectar a la compatibilidad de orígenes.
Motivo del cambio
El comportamiento anterior hacía que algunas operaciones dentro de la clase generasen excepciones NullReferenceException de forma innecesaria. Por ejemplo, el método LoggerFactory.Dispose() capturará la excepción y no hará nada.
Acción recomendada
Asegúrese de no pasar un proveedor null
a AddProvider(ILoggerProvider).
API afectadas
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de