Delen via


ActivatorUtilities.CreateInstance vereist een niet-null-provider

Met de twee ActivatorUtilities.CreateInstance methoden wordt nu een ArgumentNullException uitzondering gegenereerd als de provider parameter is null.

Versie geïntroduceerd

.NET 8 Preview 1

Vorig gedrag

Er is een null waarde toegestaan voor de provider parameter. In sommige gevallen is het opgegeven type nog steeds correct gemaakt.

Nieuw gedrag

Wanneer provider is null, wordt er een ArgumentNullException uitzondering gegenereerd.

Type wijziging die fouten veroorzaken

Deze wijziging is een gedragswijziging.

Reden voor wijziging

We hebben de parametervalidatie samen met problemen met constructorkoppeling opgelost om overeen te komen met het beoogde doel van CreateInstance. De CreateInstance() methoden hebben een niet-nullable provider parameter, dus over het algemeen werd verwacht dat een null provider niet was toegestaan.

Geef een niet-null-waarde IServiceProvider door voor het provider argument. Als de provider ook implementeert, kunnen constructorargumenten IServiceProviderIsServicedaardoor worden verkregen.

Als voor uw scenario geen afhankelijkheidsinjectie is vereist, IServiceProvidernullActivator.CreateInstance gebruikt u in plaats daarvan.

Betrokken API's

Zie ook