Json.NET için bir JsonConverter yazıyorum, bu herhangi bir numaralandırmayı [Tanım] özniteliğiyle tanımlanan bir dize değerine dönüştürmeme izin vermelidir.
Örneğin:
public enum MyEnum {
[Description("Sunday")] Sunday,
[Description("Monday")] Monday,
[Description("Tuesday")] Tuesday,
[Description("Wednesday")] Wednesday,
[Description("Thursday")] Thursday,
[Description("Friday")] Friday,
[Description("Saturday")] Saturday
}
myEnum.Description()
Açıkça dize açıklamasını döndürecek olan destekleme koduna zaten sahibim .
JsonConverter uygulamasında şu yöntem vardır:
public override bool CanConvert(Type objectType)
{
}
Dönüştürücünün bu nesneyi dönüştürebileceğini bilmesi için objectType
bir Enum
olup olmadığını ve doğru olup olmadığını nasıl belirleyeceğimi anlamaya çalışıyorum . Pek çok Enum
örneğim olduğundan, her birini açıkça kontrol edemiyorum, bu yüzden bunu başarmanın daha genel bir yolunu umuyordum.