И это должно было быть так просто ...
У меня есть существующие уровни доступа к бизнесу и данным, которые обрабатывают поиск и обновление данных, о которых идет речь. Они отлично работают с существующим приложением Winforms (.Net V2.0)
Теперь, пытаясь написать новый web-based UI, я сталкиваюсь со всевозможными проблемами (последний раз, когда я писал код asp.net, был в 1.1). В частности, я не могу привязать данные текстового поля к бизнес-объекту. Да, конечно, есть ObjectDataSource, но он хочет знать, как выполнять операции CRUD с данными.
Я ищу что-то, что действует как объекты привязки classic, так что в моем коде это так же просто, как получение объекта и выполнение обновления. Компоненты данных, такие как FormView и DetailsView, выглядят настолько универсально, что это просто смешно. Существующее приложение будет иметь диалоги с вкладками, текстовые поля, сгруппированные по панелям и т. д.
Вдобавок ко всему, у меня есть указание использовать главные страницы, и, если это не вызывает один элемент управления, я не могу заставить раздел содержимого расширяться. Я не могу просто поместить текстовое поле below в нижнюю часть Content1 и изменить размер раздела содержимого - что дает мне те же результаты, что и в предыдущем вопросе, который я опубликовал, когда нижний колонтитул не был pushed down - относительное положение решило это, но похоже, не решает эту проблему с размещением небольших текстовых полей в этой области.
Я хочу довольно просто. Что-то типа:
bindingobject.datasource = businessdataobject
bindingobject.refresh
... и обновите текстовые поля с новыми значениями. Аналогичным образом обновляются свойства businessdataobject по мере ввода пользователем новых данных.
Я смог сделать это с GridView (grdRequests.DataSource = lstRequests), составив список тегов asp:BoundField внутри коллекции <Columns>GridView.
Я что, кланяюсь здесь ветряными мельницами?
Как и во многих других вещах в «реальном мире», победила практичность. Я потратил несколько минут на написание простого кода Display (объект данных -> объект формы) и Load (объект формы -> объект данных), прежде чем меня отозвали, чтобы сделать что-то еще.





Почему бы вам не попробовать Шаблоны и практики (1) ObjectContainerDataSource? Это часть фабрики программного обеспечения веб-клиентов, которая доступна (2) здесь.
Я использовал его несколько раз, он дает вам опыт проектирования в стиле ODS (привязка времени разработки), но полный контроль над тем, как вы предоставляете источник данных. Вы просто реализуете интересующие вас события (например, Выбор события). Он также имеет поддержку подкачки и сортировки на стороне сервера, поэтому он весьма полезен для GridViews.
Он может быть недостаточно гибким для того, чего вы пытаетесь достичь, но, вероятно, стоит проверить хотя бы как PoC.
[(1) http://www.codeplex.com/websf/Wiki/View.aspx?title=Object%20Container%20DataSource] [(2) http://www.codeplex.com/websf]
Придется проверить, когда у меня появится больше времени для работы над этим проектом. Спасибо.
Вы когда-нибудь решали, что собираетесь это сделать?