Я пишу JsonConverter для Json.NET, який повинен дозволити мені конвертувати будь-які перерахунки до рядкового значення, визначеного атрибутом [Опис].
Наприклад:
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()який, очевидно, поверне його рядковий опис.
У реалізації JsonConverter є такий метод:
public override bool CanConvert(Type objectType)
{
}
Я намагаюся розібратися, як визначити, чи objectTypeє, Enumі повернути істину, щоб перетворювач знав, що може перетворити цей об'єкт. Оскільки у мене багато людей Enum, я не можу чітко перевірити кожну, тому сподівався на більш загальний спосіб досягти цього.