Доступ к данным | Доступ к БД из 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 | Дальше » |