Создание типа массива System.Void запрещено
Больше не разрешено создавать System.Type экземпляр для массива System.Void.
Прежнее поведение
typeof(void).MakeArrayType()
Ранее вернулся System.Type экземпляр.
Новое поведение
Начиная с .NET 9 создается typeof(void).MakeArrayType()
исключение.
Представленные версии
.NET 9( предварительная версия 1)
Тип критического изменения
Причина изменения
System.Void Массив является недопустимым типом. Этот тип отклоняется в некоторых случаях (например, void[]
в C# не компилируется) и невозможно создать массивы этого типа.
Среда выполнения .NET позволяет создавать недопустимый тип в некоторых ситуациях. Однако попытки использовать этот недопустимый тип в других API среды выполнения .NET часто приводят к непредвиденному поведению. Чтобы сделать поведение надежным и согласованным, лучше запретить создавать эти недопустимые типы массивов во всех ситуациях.
Рекомендуемое действие
Удалите код, который пытается создать тип для массива System.Void.
Затронутые API
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по