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.
Zalecana akcja
Usuń kod, który próbuje utworzyć typ dla tablicy System.Void.
Dotyczy interfejsów API
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla