Мэппинг enum-ов для отсутствующих значений
sel1 opened this issue · 2 comments
ВК добавляет новые значения во всевозможные enum-ы быстрее, чем они появляются в этом проекте. Если нового значения нет в проетке - ответ от ВК не парсится с ошибкой.
Вот примеры:
Error converting value "photo" to type 'VkNet.Enums.StringEnums.PostType'. Path 'response.items[6].copy_history[0].post_type'
Error converting value "admin_app" to type 'VkNet.Enums.StringEnums.Platform'. Path 'response.items[73].post_source.platform'
Error converting value "instagram" to type 'VkNet.Enums.StringEnums.Platform'. Path 'response.items[73].post_source.platform'
Причем иногда приходят такие значения, которых даже в документации vk api нет.
Из-за этого у меня ни разу не получилось добиться полностю рабочей версии после 1.47.
В связи с этим такое предложение:
- Добавить во все enum-ы, участвующие в десериализации ответа от ВК значение Unknown.
- При десериализации enum-а из JSON если подходящего значения не нашлось, возвращать Unknown
Предложение годное обдумывал уже его, но пока решения не принял
На данный момент, все StringEnum помечены как nullable, при отсутствии значения - null.
Может кто придумает, как добавить логгер в конвертер или другой вариант.