AddProvider vyhledá zprostředkovatele, který není null.
Microsoft.Extensions.Logging.LoggerFactory implementuje ILoggerFactory metodu AddProvider(ILoggerProvider)
. null
poskytovatelé nejsou přijati a způsobí ArgumentNullException vyvolání.
Zavedená verze
6.0 RC 1
Předchozí chování
AddProvider(ILoggerProvider) Dříve se neprovádí žádné ověření argumentuprovider
. Metoda považována null
za "platného" zprostředkovatele a přidala ji do kolekce poskytovatelů.
Nové chování
Počínaje rozhraním .NET 6 null
nejsou poskytovatelé přijati a AddProvider(ILoggerProvider) vyvolá ArgumentNullException výjimku, pokud je null
argumentem zprostředkovatele protokolování . Například následující kód vyvolá ArgumentNullExceptionnásledující kód:
var factory = new LoggerFactory();
((ILoggerFactory)factory).AddProvider(null));
Typ zásadní změny
Tato změna může mít vliv na kompatibilitu zdroje.
Důvod změny
Předchozí chování způsobilo, že některé operace uvnitř třídy zbytečně vyvolaly NullReferenceException výjimky. Metoda například LoggerFactory.Dispose() zachytí výjimku a nic neudělá.
Doporučená akce
Ujistěte se, že nepředáváte null
poskytovatele AddProvider(ILoggerProvider).