Почему я должен использовать DataForm?

Я нахожусь на Silverlight 4 + проект MVVM, использующий ASMX для сервисов.

Я нахожу DataForm быть громоздким. IEditableObject, привязка, и т.д., кажись, быть болью. Я сделал некоторые формы в своем приложении без DataForm, и они удались действительно хорошо.

Таким образом, я предполагаю, что мой реальный вопрос, что dataform дает мне, что ручной взрыв форма не был бы? Действительно ли это - редактирование нескольких записей одновременно? Поскольку это походит на рецепт для a concurrency кошмар.

1
задан itchi 5 August 2010 в 19:17
поделиться

1 ответ

Не уверен в вашей конкретной ситуации, но я могу ответить с точки зрения служб RIA (которые особенно выигрывают от DataForm).

Службы RIA передают сущности вашему приложению silverlight. Эти enties уже являются RESTful и уже реализуют интерфейс IEditableObject (преимущество № 1), они также могут нести метаданные, такие как требования к полям, свойства навигации, допустимые диапазоны, сообщения об ошибках и т. Д. По умолчанию Entity Framework и RIA Services запускаются. вы переносите эти метаданные, как определено в вашем источнике данных (например, SQL), без каких-либо усилий с вашей стороны (преимущество № 2). Использование одной из встроенных коллекций, таких как CollectionViewSource или DomainDataSource, обеспечивает реализацию навигации (через интерфейс ICollectionView) (преимущество № 3).

Исходя из того, что вы заявили, похоже, что вы передаете данные достаточно вручную, и вы не можете сразу получить эти преимущества.

Чтобы получить некоторые из этих преимуществ, попробуйте добавить метаданные в объект модели (добавив атрибуты из пространства имен System.ComponentModel.DataAnnotations .), Попробуйте использовать CollectionViewSource для реализации фильтрации, сортировки и навигация вашей коллекции.

2
ответ дан 2 September 2019 в 22:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: