| Доступ к данным | Доступ к БД из ASP.NET | 3. Связывание SQL данных с DataList Control | Дальше » |
|
3. Связывание SQL данных с DataList Control В то время как Repeater является итератором общего
назначения, DataList обеспечивает некоторые дополнительные
возможности управления размещением в листинге. В отличие от
Repeater, DataList позволяет включить дополнительные элементы
вне определения шаблона, подобно строкам, ячейкам и
промежуткам таблицы, которые содержат атрибуты стиля. Это
предоставляет более широкие возможности форматирования.
Например, DataList поддерживает свойства RepeatColumns и
RepeatDirection, которые определяют, должны ли данные быть
представлены в нескольких столбцах и в каком направлении
(вертикально или горизонтально) чтобы представить элементы
данных. DataList также поддерживает атрибуты стиля: тип,
размер и имя шрифта. Доступ к 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 sender, 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" установленный для DataList в <body> страницы.
MyDataList.DataSource = ds.Tables["Titles"].DefaultView;
MyDataList.DataBind();
}
3. В тэге страницы <body>, отобразите данные. </script> <body topmargin="0" leftmargin="0" marginwidth="0" marginheight="0"> 4. Откройте DataList, устанавливая его для двух столбцов, которые будут заполнен в горизонтальном порядке.
<ASP:DataList id="MyDataList" RepeatColumns="2" RepeatDirection=
"Horizontal" runat="server">
5. Установите шаблон DataList с именем "itemtemplate".
<template name="itemtemplate">
а) Используйте элемент <div>, что бы обрабатывать данные для каждой книги как логический модуль.
<div style="padding:15,15,15,15;font-size:10pt;
font-family:Verdana">
б) Используйте вложенный элемент <div> для связи данных заголовка и показа их различными шрифтами.
<div style="font:12pt verdana;color:darkred">
<i><b><%# DataBinder.Eval(Container.DataItem, "title")%>
</i></b>
</div>
<br>
в) Связываем и показываем остальную часть данных в шрифте, установленном элементом <div>.
<b>Title ID: </b><%# DataBinder.Eval(Container.DataItem,
"title_id") %><br>
<b>Category: </b><%# DataBinder.Eval(Container.DataItem,
"type")%><br>
<b>Publisher ID: </b><%# DataBinder.Eval
(Container.DataItem, "pub_id") %><br>
<b>Price: </b><%# DataBinder.Eval
(Container.DataItem, "price", "$ {0}") %><p>
</div>
</template>
</ASP:DataList>
</body>
</html> |
| Доступ к данным | Доступ к БД из ASP.NET | 3. Связывание SQL данных с DataList Control | Дальше » |