Funkcja AddProvider sprawdza, czy dostawca nie ma wartości null
Microsoft.Extensions.Logging.LoggerFactory implementuje ILoggerFactory metodę AddProvider(ILoggerProvider)
. null
dostawcy nie są akceptowani i spowodują zgłoszenie.ArgumentNullException
Wprowadzona wersja
6.0 RC 1
Poprzednie zachowanie
AddProvider(ILoggerProvider) Wcześniej nie wykonaliśmy żadnej weryfikacji argumentuprovider
. W związku z tym metoda uważana za null
"prawidłowego" dostawcę i dodała ją do kolekcji dostawców.
Nowe zachowanie
Począwszy od platformy .NET 6, null
dostawcy nie są akceptowani i AddProvider(ILoggerProvider) zgłasza błąd ArgumentNullException , jeśli argument dostawcy rejestrowania to null
. Na przykład następujący kod zgłasza błąd ArgumentNullException:
var factory = new LoggerFactory();
((ILoggerFactory)factory).AddProvider(null));
Typ zmiany powodującej niezgodność
Ta zmiana może mieć wpływ na zgodność źródła.
Przyczyna wprowadzenia zmiany
Poprzednie zachowanie spowodowało, że niektóre operacje wewnątrz klasy niepotrzebnie zgłaszały NullReferenceException wyjątki. Na przykład LoggerFactory.Dispose() metoda przechwyci wyjątek i nic nie zrobi.
Zalecana akcja
Upewnij się, że nie przekazujesz dostawcy null
do AddProvider(ILoggerProvider)usługi .