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.

Asegúrese de no pasar un proveedor null a AddProvider(ILoggerProvider).

API afectadas