Udostępnij za pośrednictwem


Niektóre interfejsy API zgłaszają wyjątek ArgumentNullException (.NET 7)

Niektóre interfejsy API weryfikują ArgumentNullException teraz parametry wejściowe i zgłaszają, gdzie wcześniej rzucili NullReferenceExceptionelement , jeśli zostały wywołane argumentami wejściowymi null .

Poprzednie zachowanie

W poprzednich wersjach platformy .NET, których dotyczy problem, interfejsy API zgłaszają wywołanie NullReferenceException z argumentem , który jest null.

Nowe zachowanie

Począwszy od platformy .NET 7, interfejsy API, których dotyczy problem, zgłaszają wywołanie ArgumentNullException z argumentem , który jest null.

Kategoria zmiany

Ta zmiana ma wpływ na zgodność binarną.

Przyczyna wprowadzenia zmiany

Zgłaszanie ArgumentNullException jest zgodne z zachowaniem środowiska uruchomieniowego platformy .NET. Zapewnia lepsze środowisko debugowania, wyraźnie komunikując, który argument spowodował wyjątek.

Wprowadzona wersja

.NET 7

  • Przejrzyj i, w razie potrzeby, zaktualizuj kod, aby zapobiec przekazywaniu null argumentów wejściowych do dotkniętych interfejsów API.
  • Jeśli kod obsługuje metodę NullReferenceException, zastąp lub dodaj dodatkową procedurę obsługi dla elementu ArgumentNullException.

Dotyczy interfejsów API

W poniższej tabeli wymieniono objęte interfejsy API i określone parametry.

Metoda/właściwość Nazwa parametru Zmienianie wersji
ComboBox.ChildAccessibleObject(ComboBox, IntPtr) owner Wersja zapoznawcza 1
ControlPaint.CreateHBitmap16Bit(Bitmap, Color) bitmap Wersja zapoznawcza 1
ControlPaint.CreateHBitmapColorMask(Bitmap, IntPtr) bitmap Wersja zapoznawcza 1
DataGridViewEditingControlShowingEventArgs(Control, DataGridViewCellStyle) control lub cellStyle Wersja zapoznawcza 1
ToolStripArrowRenderEventArgs(Graphics, ToolStripItem, Rectangle, Color, ArrowDirection) g Wersja zapoznawcza 1
ToolStripContentPanelRenderEventArgs(Graphics, ToolStripContentPanel) g lub contentPanel Wersja zapoznawcza 1
ToolStripItemRenderEventArgs(Graphics, ToolStripItem) g lub item Wersja zapoznawcza 1
ToolStripPanelRenderEventArgs(Graphics, ToolStripPanel) g lub toolStripPanel Wersja zapoznawcza 1
ListView.CheckedIndexCollection(ListView) owner Wersja zapoznawcza 5