» Главная
eXcode.ru » Статьи » ASP / ASP.NET
» Новости
» Опросы
» Файлы
» Журнал



Пользователей: 0
Гостей: 6





Связывание (Binding) SQL данных с Repeater Control




Repeater control полезен только для показа данных, не взаимодействуя с ними. Его преимущество состоит в том, что могут быть установлены шаблоны, позволяющие отображать данные различными способами.
Следующий пример демонстрирует связывание Repeater control с DataView (возвращённого из SQL запроса) который содержит информацию о размещении книг. В примере также присутствуют HeaderTemplate и FooterTemplate, которые включаются вначале и конце листинга, соответственно.
Repeater control выполняет только итерации по связанным данным, предоставляя itemtemplate один раз для каждого элемента в коллекции DataSource. Он не предоставляет ничего, кроме элементов, содержащихся в его шаблонах.

Доступ к SQL базе данных

1. Импортируйте необходимые для вашей страницы пространства имён. Это позволит обеспечить ваш код доступом к необходимым классам.

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SQL" %>
<html>

2. В пределах тэга <script language="C#" runat="server">, используйте функцию Page_Load, которая обеспечит подключение к базе данных, создаст и заполнит новый Dataset информацией из базы и затем свяжет Repeater control с Dataset. Это показывается в следующем примере кода:

<script language="C#" runat="server">
void Page_Load(Object semder, EventArgs e) {
{

а) Обеспечьте подключение к базе данных "pubs", расположенной на локальном компьютере.

        SQLConnection myConnection = new SQLConnection( 
"server=localhost;uid=sa;pwd=;database=pubs");

б) Соединитесь с SQL базой данных, используя запрос "select *", чтобы получить все данные из таблицы "Titles".

        SQLDataSetCommand myCommand = new SQLDataSetCommand(
"select * from Titles", myConnection);

в) Создайте и заполните Dataset.

        DataSet ds = new DataSet();
myCommand.FillDataSet(ds, "Titles");

г) Свяжите MyDataList с таблицей "Titles", используя заданное по умолчанию представление. Заметьте, что MyDataList - это "id" установленный для Repeater control в <body> страницы.

        MyDataList.DataSource = ds.Tables["Titles"].DefaultView;
MyDataList.DataBind();
}

</script>

3. В тэге страницы <body>, отобразите данные.


<body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0">

4. Откройте Repeater control

    <ASP:Repeater id="MyDataList" runat="server">

5. Установите шаблоны для Repeater control.

а) Установите шаблон для открытия таблицы и отображения заголовков столбцов.

      <template name="headertemplate">
<table width="100%" style="font: 8pt verdana">
<tr style="background-color:DFA894">
<th>
Заголовок
</th>
<th>
ID заголовока
</th>
<th>
Тип
</th>
<th>
ID издателя
</th>
<th>
Цена
</th>
</tr>
</template>

б) Установите шаблон отображающий реальные данные.

      <template name="itemtemplate">
<tr style="background-color:FFECD8">
<td>
<%# DataBinder.Eval(Container.DataItem, "title") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "title_id") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "type") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "pub_id") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "price", "$ {0}") %>
</td>
</tr>
</template>

в) Установите шаблон для закрытия таблицы.

      <template name="footertemplate">
</table>
</template>

6. Закройте Repeater control

  </ASP:Repeater>

7. Закройте страницу.

</body>
</html>

Источник: www.cyberguru.ru

К началу статьи





Добавил: Дата публикации: 2007-11-04 13:07:45
Рейтинг статьи:3.11 [Голосов 9]Кол-во просмотров: 4302

Комментарии читателей

Всего комментариев: 1

2018-01-13 13:36:06
Zwpjhnd
Мы платим за лайки! - Ежедневные выплаты!

Наш сервис предоставляет настоящие лайки на фото заказчиков, которые готовы платить за качество.

Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и зарабатывать за это деньги.

Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк,

Вам достаточно просто зарегистрироваться на нашем сервисе. > http://click-likes.tk/ <

Вывод заработанных средств ежедневно в течении нескольких минут.
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Какую БД предпочитаете?
MSSQL
20% (38)
BDE
1% (1)
MySQL
35% (68)
Access
6% (11)
InterBase
11% (21)
Paradox
3% (5)
Oracle
10% (19)
PostgreSQL
0% (0)
Другой
3% (6)
Не использую БД!
12% (23)

Проголосовало: 192
Антивирус. Ты кто?
Вирус. Область данных!
Антивирус. А не вирус?
Вирус. Hи боже мой!
Антивирус. А зачем прерывания перехватываешь?
Вирус. Я?!
Антивирус. Вот же подпрограмма.
Вирус. Это не подпрограмма. Это цитата из Лао-цзы на языке оригинала в альтернативной кодировке.
Антивирус. А зачем EXE-файлы ищешь?
Вирус. А вдруг хозяин спросит: "А где мои ЕХЕ-файлы?" А я ему - вот они!
Антивирус. Сдается мне, что ты все-таки вирус.
Вирус. Hу ладно, только тебе признаюсь, только ты никому не говори! Hа самом деле я... антивирусная вакцина!
Антивирус. А зачем нужна антивирусная вакцина, если есть я?
Вирус. Откуда я знаю? У хозяина спроси.
Антивирус. А если я тебя на всякий случай все-таки грохну?
Вирус. А если я тебя?
Антивирус. Hе получится. У меня управление.
Вирус. А ты свою контрольную сумму давно пересчитывал?
Антивирус. А причем тут моя контрольная... ой!!!
Вирус. То-то же.
Рейтинг: 7/10 (1)
Посмотреть все анекдоты