Я решил, что возвращать наборы данных, работать с наборами данных и таблицами данных во внешнем приложении — довольно плохая идея. Итак, с помощью магии дженериков я возвращаю общий список через вызов веб-службы (а не WCF, просто старый asmx). Это работает отлично, пока вам нужно возвращать один список за вызов вашего веб-сервиса.
Сценарий, с которым я сталкиваюсь, заключается в том, что у меня более сложный экран, где есть несколько раскрывающихся списков и так далее. Мне нужно привязать эти выпадающие списки к общему списку. Проблема в том, что я не хочу делать несколько веб-вызовов, по одному для каждого раскрывающегося списка, чтобы получить свои данные. Раньше я бы просто возвращал набор данных и привязывал раскрывающийся список к определенной таблице в наборе данных.
Таким образом, было бы здорово вернуть несколько общих списков за один веб-вызов.
Что я пробовал:
- Использование списка списков
- Использование коллекции общих списков
- При создании базового класса и использовании коллекции
List<Base>
возникают проблемы с преобразованием при попытке вставить объекты в этотList<Base>
. - Создание класса со свойствами, которые возвращают
List<MyOneObject>
,List<MySecondObject>
и т. д. Это работает, но немного запутанно... У меня в приложении много классов и экранов, где это может произойти. Я мог бы создать такой класс со свойствамиList<MyType>
для каждого класса, но, как я уже сказал, я думаю, что это может выйти из-под контроля.
Итак, на данный момент у меня есть два варианта: № 4 в приведенном выше списке или просто вернуть набор данных, чего я бы предпочел не делать :0)
Кто-нибудь сталкивался с этим раньше?