Я начинаю изучать немного Flex для развлечения и, возможно, доказать, что я все еще могу изучать что-то новое :) У меня есть идея для проекта, и одна из его частей - это компонент дерева, который может отображать данные в разныхспособы в зависимости от конфигурации.
Идея
Существует список объектов, имеющих свойства, такие как идентификатор, дата, время, имя, описание.И иногда список должен отображаться так:
- первый уровень: дата
- второй уровень: время
- третий уровень: имя
и иногда так:
- первый уровень: год
- второй уровень: месяц
- третий уровень: день
- четвертый уровень: время иимя
Под уровнем я подразумеваю уровень вложенности, конечно.Таким образом, у нас могут быть годы, у которых есть месяцы, у которых есть дни, у которых есть часы и т. Д.
Проблема
Что может быть лучшим способом сделатьЭто?Я имею в виду, должен ли я подготовить данные для различных способов вложения за пределы компонента или даже за пределы flex?Я могу сделать это на уровне веб-сервисов в C #, где я планирую создать слой доступа к базе данных и отправить его в удобное для работы и готовое к отображению XML или массив объектов.Но мне интересно, не вызовет ли это дополнительный и, возможно, ненужный сетевой трафик.
Я пытался взломать некоторый код в моем компоненте, чтобы преобразовать мои объекты данных в XML или ArrayCollection, но я недостаточно знаком с Flex и застрял на удалении дубликатов или получении определенных данных по некоторому значению ключа.Обычно для таких вещей у меня есть STL с картами, наборами и векторами, и я считаю, что Flex-массивы и даже словарь немного сбивают с толку (я читал справочник по языку и гуглил без особой удачи).
Вопрос
Итак, подведем итог: я должен предоставить данные своего компонента дерева, подготовленные только для выбранного типа отображения, или я должен попытаться сделать это внутренне внутри компонента (или некоторый вспомогательный класс, написанный на ActionScript)?
ДОПОЛНИТЕЛЬНЫЙ ВОПРОС
Было бы хорошим подходом подготовить отдельные модели данных для каждого способа отображения и некоторый преобразователь для передачи данных между ними, и полученная модель будетбыть привязанным к компоненту как dataProvider?Или, может быть, есть какой-то другой умный способ сделать это, и мои данные автоматически реорганизуются?:)