Udostępnij za pośrednictwem


Tworzenie typu tablicy system.Void jest niedozwolone

Nie można już utworzyć System.Type wystąpienia dla tablicy System.Void.

Poprzednie zachowanie

typeof(void).MakeArrayType() Wcześniej zwróciło System.Type wystąpienie.

Nowe zachowanie

Począwszy od platformy .NET 9, typeof(void).MakeArrayType() zgłasza wyjątek.

Wprowadzona wersja

.NET 9 (wersja zapoznawcza 1)

Typ zmiany powodującej niezgodność

Ta zmiana jest zmianą behawioralną.

Przyczyna wprowadzenia zmiany

Tablica obiektu System.Void jest nieprawidłowym typem. Ten typ jest odrzucany w niektórych przypadkach (na przykład void[] w języku C# nie kompiluje) i nie można utworzyć tablic tego typu.

Środowiska uruchomieniowe platformy .NET zezwalały na utworzenie tego nieprawidłowego typu w niektórych sytuacjach. Jednak próby użycia tego nieprawidłowego typu w innych interfejsach API środowiska uruchomieniowego platformy .NET często prowadzą do nieoczekiwanych zachowań. Aby zachowanie było niezawodne i spójne, lepiej jest uniemożliwić tworzenie tych nieprawidłowych typów tablic we wszystkich sytuacjach.

Usuń kod, który próbuje utworzyć typ dla tablicy System.Void.

Dotyczy interfejsów API