Создание динамического пользовательского интерфейса ASP.NET, управляемого данными

ОГЛАВЛЕНИЕ

Большинство веб-приложений, управляемых данными, обладают фиксированными моделью данных и пользовательским интерфейсом. "Фиксированными" в том плане, что данные, которые необходимо получить, уже известны заранее. Следовательно, таблицы базы данных созданы до того, как пишется сам код, и пользовательский интерфейс приложения диктуется заранее определенной моделью данных. В то время как большинство приложений работают с фиксированной моделью данных, существуют случаи, когда части модели должны быть определены конечным пользователем. Такие приложения сложнее создать, потому что модель данных и пользовательский интерфейс должны быть достаточно гибкими, чтобы позволить пользователю указать информацию, которую нужно сохранять.

Представьте, что вы создаете веб-приложение, которое использовалось бы в маленьких юридических фирмах для управления их клиентурой. Вам понадобится таблица базы данных, которая хранила бы информацию о каждом клиенте. Данная таблица будет иметь колонки для каждого атрибута клиента, к примеру: FirstName -для имени, LastName- для фамилии, Email - для электронной почты, Address1 - для основного адреса, Address2 - для дополнительного адреса, City - город и так далее. Независимо от того, какие атрибуты вы определите для данной таблицы, вы можете быть уверены в том, что может появиться такая юридическая контора, которой потребуется дополнительная информация, не содержащаяся в таблице. Чтобы предоставить такой уровень гибкости, вам необходимо разрешить каждой фирме указывать дополнительные атрибуты относительно клиентов, касающихся их компании.

Данная статья является первой частью из четырех, которые рассматривают способ создания модели данных и пользовательского интерфейса, позволяющих реализовать данные динамические веб-сайты, управляемые данными. В этой статье мы рассмотрим сохранение динамической, определенной конечным пользователем информации в базе данных. Читайте далее, чтобы узнать больше об этом!

Обзор динамического пользовательского интерфейса, управляемого данными

До того, как мы начнем создавать нашу модель данных, давайте уделим некоторое время обсуждению всех основ динамического пользовательского интерфейса, управляемого данными. Такие интерфейсы чаще всего используются в веб-приложениях, где единственный сервер приложения служит в качестве веб-сайта для множества клиентов. Во введении я привел пример веб-приложения, используемого множеством юридических компаний. Идея с динамическим пользователским интерфейсом, управляемым данными, заключается в том, что в дополнение к текстовым полям данных клиентам может понадобиться создать специализированные атрибуты. Такая модель требует наличия следующих компонентов:

  • Модель данных, которая позволяет каждому клиенту указать свои собственные атрибуты наряду с возможностью записи значений данных атрибутов. Исходя из примера юридических компаний, клиентам необходимо иметь возможность указать специализированные атрибуты для своих потребителей. Соответственно, модель данных должна быть способна сохранить, какие именно специализированные атрибуты каждая юридическая компания хочет записать, а также значения данных атрибутов клиентуры каждой фирмы.
  • Веб-страница, которая позволяет клиентам указать свои специализированные атрибуты. Данная страница запросит у пользователя указать название и тип данных для каждого специализированного атрибута. Она также может предложить более продвинутые возможности, например такие, как необходимость в определенных атрибутах либо другие правила валидации.
  • Веб-страница, которая реализует данный динамический интерфейс, управляемый данными. Когда пользователь посещает данную веб-страницу, она загружает соответствующие веб-элементы управления для сбора специализированных атрибутов, которые применимы на данный момент к авторизированному пользователю. В дополнение данной странице требуется заполнить динамически загруженные элементы управления текущими значениями базы данных и предоставить пользователю возможность редактировать данные атрибуты, а также сохранять изменения в базе данных.

В приведенной статье рассматривается способ создания модели данных для записи динамических атрибутов, указанных пользователем. Во второй части мы рассмотрим способ создания веб-страницы, где клиенты определяют свои специализированные атрибуты. Третья часть исследует самую сложную составляющую головоломки - динамическое создание пользовательского интерфейса, основанного на информации авторизированного пользователя, а четвертая рассмотрит более продвинутые принципы по данной теме.

На протяжении трех первых статей мы исследуем реализацию упрощенной версии данного примера, указанного во введении к данной статье, а именно веб-приложения для юридических фирм, позволяющего каждой компании указать и сохранить специализировнные атрибуты, касающиеся их клиентуры.