EnumConverter ověřuje registrované typy jako výčtu.
EnumConverter je převaděč typů, který se převádí na typ a z typu enum
. EnumConverter teď ověřuje, že typ, který se má zaregistrovat, je typu enum
.
Předchozí chování
Dříve se typ, který se má zaregistrovat, nebyl ověřen jako enum
typ.
Nové chování
Počínaje rozhraním .NET 9 vyvolá ArgumentException výjimku, pokud typ, který chcete převést, EnumConverter není typemenum
. Všechny odvozené třídy EnumConverter by měly tento požadavek respektovat.
Zavedená verze
.NET 9 Preview 7
Typ zásadní změny
Tato změna je změna chování.
Důvod změny
Je logické vynucovat požadavek, který EnumConverter se používá pouze k převodu na typy a z enum
typů. Pravděpodobně byl dohled nad tím, že tento požadavek nebyl přidán dříve.
Primárním faktorem této změny však bylo oříznutí. Oříznutí nestříhá enum
typy, ale používá se EnumConverter u enum
typů požadovaných DynamicallyAccessedMembersAttribute poznámek k enum
typu. To znamená, že použití vygeneruje EnumConverter
zbytečné upozornění na oříznutí. Nedávná změna odebrala požadavek na poznámku. Součástí důvodu této změny bylo vynucování, které EnumConverter
se používá pouze s enums
.
Doporučená akce
Neexistuje žádné jednoduché alternativní řešení, pokud EnumConverter se používá k převodu na a z jinéhoenum
typu.
Ovlivněná rozhraní API
- EnumConverter(Type) konstruktor