powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Динамическая коллекция данных, как реализовать?
5 сообщений из 5, страница 1 из 1
Динамическая коллекция данных, как реализовать?
    #38144601
Miad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стоит задача, есть база на SQL сервере. Есть Silverlight приложение, в базе имеется динамически формируемая вьюха, т.е. при обращении к ней мы никогда не знаем сколько в ней полей и какого они типа. Но на клиенте на форме, которая будет принимать её в качестве контекста, имена части этих полей известны и прибиндины к соответствующим контролам.
Вопрос как получить эту вьюху в виде объекта? В приложении используется ADO.Entity, но я че-то не понял как вытащить анонимный объект и передать его клиенту. В каком направлении копать и мыслить?
...
Рейтинг: 0 / 0
Динамическая коллекция данных, как реализовать?
    #38144603
Miad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая штука как DynamicObject , интересно можно ли его как-нибудь в Entity ввинтить?
...
Рейтинг: 0 / 0
Динамическая коллекция данных, как реализовать?
    #38145109
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Miad,

поскольку DynamicObject не сериализуемый, придется позаботится о "транспорте", т.е. "отгружать" сериализуемый контент, из которого на клиенте воссоздавать dynamic, во-вторых, например в SL, придется исхитрится прибиндить эти свойства (индексированные свойства или конвертер)
...
Рейтинг: 0 / 0
Динамическая коллекция данных, как реализовать?
    #38145191
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LRMiad,

поскольку DynamicObject не сериализуемый, придется позаботится о "транспорте", т.е. "отгружать" сериализуемый контент, из которого на клиенте воссоздавать dynamic, во-вторых, например в SL, придется исхитрится прибиндить эти свойства (индексированные свойства или конвертер)

В SL есть ICustomTypeProvider - более вменяемый вариант, чем IDynamicMetaObjectProvider, те позволяет обходится без рефлексии и тем более индексированных свойств.
Сериализуйте в json или xml, а дальше несложно
...
Рейтинг: 0 / 0
Динамическая коллекция данных, как реализовать?
    #38145486
enigmatic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MiadСтоит задача, есть база на SQL сервере. Есть Silverlight приложение, в базе имеется динамически формируемая вьюха, т.е. при обращении к ней мы никогда не знаем сколько в ней полей и какого они типа. Но на клиенте на форме, которая будет принимать её в качестве контекста, имена части этих полей известны и прибиндины к соответствующим контролам.
Вопрос как получить эту вьюху в виде объекта? В приложении используется ADO.Entity, но я че-то не понял как вытащить анонимный объект и передать его клиенту. В каком направлении копать и мыслить?Насколько я понял, у вас есть SQL сервер, ASP.NET серверсайд с Entity Framework и SL приложение, хостящееся на ASP.NET серверсайде.
Насколько я понял, проблема сборки динамического объекта возникает уже на серверсайде (потому что вы хотите "вытащить анонимный объект и передать его клиенту").
Похоже, стоит последовать совету SeVa и собрать тип динамического объекта с помощью ICustomTypeProvider на серверсайде, собрать коллекцию динамических объектов, сериализовать её, передать клиенту, десериализовать на клиенте, прибиндить к гриду/чему-угодно.

P.S.: Я использую ICustomTypeProvider у себя для сборки коллекции объектов динамического типа из plain xml.
P.P.S.: "Каноничная" версия хелпера от M$ ( link ) имеет проблемы с невозможностью редактирования "из коробки" и со статическими свойствами (т.е. вы не сможете у себя в приложении одновременно определить несколько разных динамических типов). Проблема со статическими свойствами решается в лоб -- простой правкой хелпера.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Динамическая коллекция данных, как реализовать?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]