Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
EnumConverter türüne ve türünden dönüştüren bir enum tür dönüştürücüsüdür. EnumConverter artık kaydedilecek türün bir enum tür olduğunu doğrular.
Önceki davranış
Daha önce, kaydedilecek tür bir enum tür olarak doğrulanmamıştı.
Yeni davranış
.NET 9'dan başlayarak, EnumConverter dönüştürülecek tür bir tür değilse bir ArgumentException oluştururenum. Türetilmiş sınıfları EnumConverter da bu gereksinime uyulmalıdır.
Sürüm kullanıma sunulmuştur
.NET 9 Önizleme 7
Hataya neden olan değişikliğin türü
Bu değişiklik davranışsal bir değişikliktir.
Değişiklik nedeni
Yalnızca türlere ve türlerden EnumConverter dönüştürmek için kullanılan gereksinimi enum zorunlu kılmak mantıklıdır. Bu gereksinimin daha önce eklenmemiş olması büyük olasılıkla bir gözetimdi.
Ancak, bu değişikliğin birincil sürüş faktörü kırpma amaçlıydı.
Kırpma türleri kırpmazenum, ancak türlerde kullanmak EnumConverter için enum bir DynamicallyAccessedMembersAttribute tür için ek açıklama gerekirenum. Bu, kullanmanın EnumConverter gereksiz kırpma uyarıları oluşturduğu anlamına gelir. Son yapılan bir değişiklik ek açıklama gereksinimini kaldırdı. Bu değişikliğin bir nedeni, yalnızca ile EnumConverterkullanılacak olan değişikliği enums zorunlu kılmaktı.
Önerilen eylem
türü olmayanEnumConverter bir öğeye ve türünden dönüştürmek için kullanılırsa enum kolay bir geçici çözüm yoktur.
Etkilenen API’ler
- EnumConverter(Type) Oluşturucu