Estou escrevendo um JsonConverter para Json.NET que deve me permitir converter qualquer enum em um valor de string definido por um atributo [Description].
Por exemplo:
public enum MyEnum {
[Description("Sunday")] Sunday,
[Description("Monday")] Monday,
[Description("Tuesday")] Tuesday,
[Description("Wednesday")] Wednesday,
[Description("Thursday")] Thursday,
[Description("Friday")] Friday,
[Description("Saturday")] Saturday
}
Já tenho o código de suporte, myEnum.Description()
que obviamente retornará sua descrição de string.
Na implementação de JsonConverter, existe este método:
public override bool CanConvert(Type objectType)
{
}
Estou tentando descobrir como determinar se objectType
é um Enum
e se retorna verdadeiro para que o conversor saiba que pode converter este objeto. Como tenho muitos Enum
, não posso verificar explicitamente cada um, então esperava uma maneira mais genérica de fazer isso.