Я работал над проектом Flex, который использует объекты значений (VO) для манипулирования данными на стороне клиента. VO заполняются с помощью тега [RemoteClass] перед определением класса.
Структура базы данных была оптимизирована, поэтому в результате появились таблицы с такими полями, как:
optionsName: "1, 2, 3, 4, 5, 6"
В рамках проекта это значение («1, 2, 3, 4, 5, 6») означает динамический набор чисел.
По умолчанию поле класса optionsName заполняется строкой «1, 2, 3, 4, 5, 6» и работает нормально. Но я использую это поле как набор чисел, соответствующий бизнес-логике, и удобнее использовать их как экземпляры Array of Number. В общем, лучшее решение для этого - подписаться на сериализованные / десериализованные события ВО и выполнить дополнительное преобразование.
Вопрос: как этого добиться во Flex / ActionScript?
Я понимаю, что мог бы сделать это, когда результат получен от удаленного объекта, но с моей точки зрения это не очень хорошее решение. Также я знаю о решении с реализацией интерфейса flash.utils.IExternalizable.
Основная идея заключается в том, чтобы заставить Flex вызывать необходимый метод перед сериализацией и после десериализации VO.
Заранее спасибо.
С наилучшими пожеланиями,
Виктор Бурдейный