Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
25
Добавлен:
20.05.2015
Размер:
1.19 Mб
Скачать

1.2. Отображение информации из базы данных

Для отображения содержимого из базы данных на Web странице VWD2005 EE использует три вида компонентов:

  • Data Connection, обеспечивает доступ к базам данных.

  • Data Source использует Data Connection для того чтобы искать, вставлять, обновлять и удалять записи в базе данных, ничего не показывая пользователю.

  • Data Bound Controls показывает информацию из базы данных, используя Data Source.

Чтобы оценить легкость работы по созданию приложений баз данных с использованием VS2005 , выполним следующую процедуру:

В окне Database Explorer, раскройте любое существующее подключение Data Connection и найдите таблицу или запрос, который нужно отобразить в Web-странице.

Откройте Web-страницу в Режиме конструктора. Перетащите таблицу или запрос из Database Explorer и поместите его на открытую страницу (см. рис.8), это действие добавляет два элемента управления к Web-странице: SqIDataSource - управляет источником данных и GridView - отображает в табличном виде информацию из базы данных. GridView - один из самых популярных и полезных элементов управления данными. VS2005 автоматически связывает элемент GridView и источник данных.

Рис. 8.Использование элемента управления GridView.

Вы также можете создать источник данных, перетаскивая значок SqlDataSource из группы Toolbox's Data и помещая его на страницу. Табл.2 описывает некоторые элементы управления данными.

Таблица 2. Элементы управления данными

Управление

Описание

SqIDataSource

Производит поиск и обновление информации в базах данных Microsoft SQL сервера.

AccessDataSource

Производит поиск и обновление информации в базах данных Microsoft Access.

ObjectDataSource

Производит поиск и обновление информации через бизнес объекты.

XmlDataSource

Служит для работы с информацией, содержащейся в XML файлах.

SiteMapDataSource

Обрабатывает информацию, содержащуюся в файле карты сайта.

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

  1. Выделите элемент SqIDataSource, щелкните по нему правой кнопкой мыши и из выпадающего меню выберите пункт Configure Data Source

Рис. 9.Выбор подключения

  1. Когда диалоговое окно Choose Your Data Connection (см. Рис.8.), появится, вы должны:

  • использовать раскрывающийся список, чтобы выбрать нужную строку подключения, или

  • щелкнуть на кнопку New Connection, чтобы создать новую строку подключения данных.

Чтобы отобразить содержимое строки подключения источника данных нужно нажать на значок Плюс (+), который предшествует надписи Connection String

Рис. 10. Выбор полей из таблицы

  1. Нажмите кнопку Next, чтобы перейти к окну Configure The Select Statement (см. Рис.9.). Для составления простых запросов выберите пункт Specify columns from a table or view задайте следующие параметры настройки:

  • Name. Определяет таблицу или запрос, с которым вы хотите работать. Раскрывающееся меню позволяет выбрать любую таблицу, доступную при этой строке подключения данных.

  • Columns. Отметьте флажком, те поля которые нужно включить в отчет. Чтобы отметить все поля, пометьте флажком поле звездочка (*).

  • Return Only Unique Rows. Этот флажок нужен, если две или более записей имеют одинаковые значения полей, а нужно показать только одну из них.

  • WHERE. Нажав эту кнопку вы откроете окно Add WHERE, где можете задать условия для отобора записей.

  • ORDER BY. Нажав эту кнопку вы откроете окно Add ORDER BY, где можете определить поля участвующие в сортировке данных

  • Advanced. Нажав эту кнопку вы откроете окно Advansed SQL Generation Options. Если хотите использовать источник данных для обновления записей установите этот флажок напротив опции Generate INSERT, UPDATE and DELETE statements. В результате будут сгенерированы операторы для вставки, обновления и удаления записей (INSERT, UPDATE, DELETE). Другая опция называется Use optimistic concurrency. Используйте ее, если ожидается высокая нагрузка на создаваемый вами ресрус.

Если эти опции не удовлетворили ваши запросы, то можно выбрать пункт Specify a custom SQL statement or stored procedure в том же диалоговом окне (см. рис.10)

  1. Если вы выбрали пункт Specify a custom SQL statement or stored procedure на предыдущем шаге, то нажмите кнопку Next. В результате отобразится диалоговое окно Define Custom Statements or Stored Procedures (см. рис.11.).

Рис. 11.Составление собственных SQL операторов

Чтобы определить собственные операторы SELECT, UPDATE, INSERT или DELETE, выберите вкладку соответствующую нужному оператору и затем нажмите на кнопку Query Builder. В результате отобразится конструктор запросов (см. рис.7), с помощью которого вы можете создать SQL запрос и даже проверить его работу, нажав на кнопку Execute Query. Если проверка прошла успешно, нажмите на кнопку OK.

  1. Нажмите кнопку Next. Отобразится диалоговое окно Test Query (см. рис.12), Нажмите кнопку Test Query и убедитесь, что на экране появились нужные вам данные. Если все правильно нажмите кнопку Finish. В противном случае нажмите кнопку Previous и внесите нужные изменения.

Рис. 12.Тестирование запроса

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

  • DataSourceID. Имя источника данных, которое указывает на таблицу или запрос с необходимой информацией

  • DataTextField. Имя поля, значения которого будут отображаться при работе пользователя с элементом DropDownList. Обычно эти значения относятся к строковому типу.

  • DataValueField. Имя поля, значения которого будут возвращаться элементом DropDownList. Обычно эти значения относятся к целому типу.

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

Таблица 3. Связанные устройстви отображения данных

Элемент управления

Описание

Поддержка способ обновления данных

Присутствует в версии ASP

GridView

Отображает данные в табличном виде

Update, Delete

2.0

DetailsView

Отображает поля записи из источника данных в виде HTML таблицы, каждая строка корой соответствует полю записи

Insert, Update, Delete

2.0

FormView

Отображает отдельные записи из источника данных, но вместо отдельных ячеек строк он использует заданные пользователем шаблоны

Insert, Update, Delete

2.0

Repeater

Предоставляет гибкий и удобный механизм отображения повторяющихся списков элементов.

Дополнительный код

1.0

DataList

Похожи на элементы управления Repeater, но обладают дополнительными возможностями: они поддерживают форматирование по колонкам, а также выбор и редактирование элементов

Дополнительный код

1.0

Из перечисленных в таблице элементов управления, связанных с отображением данных, элементы GridView, DetailsView и FormView наиболее удобны в использовании. Процесс конфигурации этих элементов почти одинаков для каждого из них. Покажем его на примере конфигурирования элемента управления GridView.

Рис. 13.С этим диалоговым

Будем использовать элемент управления GridView для создания страницы Анкетных данных пользователей сайта "Зодиак" (рис13). На рисунке вы видите страницу, которая оформлена с использованием уже известных вам элементов: меню; темы; и строки перемещения. Обратите внимание на таблицу содержащую сведения о пользователях из таблицы "Анкета" - это и есть элемент управления GridView. Чтобы создать Web-станицу, содержащую GridView, проделайте следующие действия:

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

  2. Добавьте элемент управления GridView и SqIDataSource к странице, для этого вы можете использовать любой из вариантов:

  • Перетащите таблицу "Анкета" из окна Database Explorer и поместите ее на вашу страницу.

  • Перетащите элемент управления GridView и SqIDataSource из группы Data панели Toolbox на открытую Web-страницу.

  1. Откройте меню задач элемента управления SqIDataSource и выберите в нем пункт Configure Data Source.

  2. Когда появится диалоговое окно Choose Your Data Connection, выберите или создайте подключение к базе данных "Зодиак", а затем нажмите кнопку Next.

  3. Когда появится диалоговое окно Configure The Select Statement, выберите таблицу "Анкета", а в ней поля ФИО, дата рождения, телефон, электронный адрес, доход.

  4. Нажмите кнопку WHERE, когда появится диалоговое окно Add WHERE, определите значения следующих полей:

  • Column (доход)

  • Operator (>= )

  • Source (none)

  • Value (10000)

а затем нажмите кнопку Add (см. рис.14). В результате мы получим запрос, показывающий только записи, в которых доход больше или равен 10.000

Рис. 14.Задание условия на отбор записей

  1. Нажмите кнопку OK, чтобы закрыть окно Add WHERE, затем нажмите кнопку ORDER BY в окне Configure The Select Statement.

  2. Когда появится диалоговое окно Add ORDER BY, определите значение поля Sort by равное ФИО, а затем нажмите кнопку OK. В результате будет установлена сортировка ваших записей по полю ФИО.

  3. Нажмите последовательно кнопки Next, Test Query и Finish, чтобы закончить работу мастера.

Конфигурирование элемента управления SqIDataSource завершено, теперь нужно закончить конфигурирование элемента управления GridView, для этого выполните следующие действия:

  1. Откройте меню задач элемента управления GridView и удостоверьтесь, что поле Choose Data Source указывает на тот источник данных, который вы только что сконфигурировали.

  2. Поставьте флажки напротив следующих опций:

  • Enable Paging. Разбивает весь отчет на страницы, содержащие заданное число записей. Внизу отчета появляются номера страниц, которые можно использовать для простмотра записей (см. рис.12).

  • Enable Sorting. Позволяет сортировать записи, показанные на Web странице, для этого достаточно щелкнуть по оглавлению нужного столбца.

  1. Из меню задач выберите пункт Edit Columns. Появится диалоговое окно Fields (см.рис.15). Используйте область Selected Fields и связанные с ним кнопки-стрелки "вверх" и "вниз", чтобы задать порядок следования полей в отчете: ФИО, дата_рождения, телефон, электронный_адрес, доход.

Рис. 15.Определение полей и их порядка следования в отчете

  1. Выберите поле ФИО в области Selected Fields, а затем, используя область BoundField Properties, задайте свойства, перечисленные в табл.4. Повторите эту процедуру для остальных полей

    Таблица 13.4. Список продуктов в недавно-отобранной категории

    Свойство

    Поле

    DataField

    ФИО

    Дата_рождения

    телефон

    Электронный_адрес

    доход

    HeaderText

    Фамилия Имя Отчество

    Дата рождения

    Контактный телефон

    Электронный адрес

    Годовой доход

    Element Style: HorizontalAlign

    Left

    Right

    Right

    Right

    Right

  2. Нажмите на кнопку OK, чтобы закрыть диалоговое окно Fields

  3. Сохраните страницу и просмотрите ее в вашем браузере.

Мы убедились, что с помощью VS2005 можно создавать привлекательные Web страницы, которые отображают информацию из базы данных различными способами. Все это можно сделать, не написав ни строчки кода, а только используя компоненты: Data Connection, Data Source и Data Bound Controls.