Кто-нибудь использует эту связку в реальных приложениях? Я на днях посмотрел пару учебных видео, попробовал и плююсь до сих пор — да, сделать простенький мастер-детейлс грид с сортировкой/фильтрацией/группировкой занимает пару минут усилий и пару десяток строк в XAML, но шаг влево — и жопа. Так и не нашел, как работать с агрегацией (на стороне сервера) и передавать DTO объекты без плясок с бубном. Это действительно библиотека для создания "детских" приложений или же я просто не умею её готовить?
Здравствуйте, Andy77, Вы писали:
A>Кто-нибудь использует эту связку в реальных приложениях? Я на днях посмотрел пару учебных видео, попробовал и плююсь до сих пор — да, сделать простенький мастер-детейлс грид с сортировкой/фильтрацией/группировкой занимает пару минут усилий и пару десяток строк в XAML, но шаг влево — и жопа. Так и не нашел, как работать с агрегацией (на стороне сервера) и передавать DTO объекты без плясок с бубном. Это действительно библиотека для создания "детских" приложений или же я просто не умею её готовить?
Не, все по-взрослому.
Последний проект делал как раз на WCF RIA Services, и сэкономил кучу времени, хотя сперва тоже плевался, потому что слишком многое там "под капотом".
И агрегация, и DTO, и произвольная аутентификация, и использование стандартных веб-сервисов, и TDD — на раз.
Если будут конкретные вопросы — велкам.
Для разминки — вот как раз по теме: http://weblogs.asp.net/fredriknormen/archive/2009/11/20/wcf-ria-services-and-dto-with-association.aspx
На опушке за околицей мужики строили коровник.
Работали споро и весело. Получалось х**во.
Re: Silverlight & RIA Services
От:
Аноним
Дата:
02.08.10 07:53
Оценка:
Здравствуйте, Andy77, Вы писали:
A>Кто-нибудь использует эту связку в реальных приложениях? Я на днях посмотрел пару учебных видео, попробовал и плююсь до сих пор — да, сделать простенький мастер-детейлс грид с сортировкой/фильтрацией/группировкой занимает пару минут усилий и пару десяток строк в XAML, но шаг влево — и жопа. Так и не нашел, как работать с агрегацией (на стороне сервера) и передавать DTO объекты без плясок с бубном. Это действительно библиотека для создания "детских" приложений или же я просто не умею её готовить?
Вполне согласен с кучей неудобств. К примеру, приходится грузить все дочерние данные до редактирования, т.к. после редактирования догрузка дочерних данных не возможна. Если у парент и чайлд DDS-сов разные domain context'ы то тоже не получается никакое редактирование.
Много чего приходится реализовывать обходными путями.
А>Вполне согласен с кучей неудобств. К примеру, приходится грузить все дочерние данные до редактирования, т.к. после редактирования догрузка дочерних данных не возможна.
А зачем такое нужно?
Если у парент и чайлд DDS-сов разные domain context'ы то тоже не получается никакое редактирование.
Не понял.
А>Много чего приходится реализовывать обходными путями.
А что именно?
Мне наоборот понравилось — в RIA Services обычно получаешь желаемое минимумом усилий.
На опушке за околицей мужики строили коровник.
Работали споро и весело. Получалось х**во.
Здравствуйте, akarinsky, Вы писали:
A>Здравствуйте, Аноним, Вы писали:
А>>Вполне согласен с кучей неудобств. К примеру, приходится грузить все дочерние данные до редактирования, т.к. после редактирования догрузка дочерних данных не возможна. A>А зачем такое нужно?
Такой сценарий. Существует объект Парент (основные данные, которые видит пользователь) и куча Чайлдов, которые отображаются во вкладках. Так вот, пользователь может как зайти так и не заходить во вкладки для просмотра чайлдов. Хотелось бы грузить дополнительную инфу только тогда, когда она необходима.
A>Если у парент и чайлд DDS-сов разные domain context'ы то тоже не получается никакое редактирование. A>Не понял.
Представьте, что вы грузите дочерние объекты не через инклюд, а так же как и паренты, только передаете ID парента.
Для загрузки данных используются DomainDataSource. Т.е. и для парента и для чайлдов свои DDS. Так вот, чтобы можно было редактировать данные в этой связке, необходимо чтобы у обоих DDS был один и тот же DomainContext
А>>Много чего приходится реализовывать обходными путями. A>А что именно?
У меня ситуация, что сущности маппируются не на таблицы, а на View. С обновлением/вставкой данных проявляются некоторые неудобства, которые приходится решать руками. Понятно, что реализация должна быть кастомной.
A>Мне наоборот понравилось — в RIA Services обычно получаешь желаемое минимумом усилий.