Чтение онлайн

ЖАНРЫ

Обработка баз данных на Visual Basic®.NET

Прайс Кевин Т.

Шрифт:
ЛИСТИНГ 11.1. Вспомогательный КОД Web-формы default.aspx.vb

Imports System.Data

Imports System.Data.SqlClient

Public Class WebForm1

 Inherits System.Web.UI.Page

#Region " Web Form Designer Generated Code "

 ' Этот вызов организован мастером Web Form Designer.

 <System.Diagnostics.DebuggerStepThrough> _

 Private Sub InitializeComponent

 End Sub

 Private Sub Page_Init(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles MyBase.Init

' CODEGEN:
Вызов этого метода организован мастером

' Web Form Designer.

' He редактируйте этот код вручную с помощью окна редактирования.

InitializeComponent

 End Sub

#End Region

 Dim connString As String

 Private Sub Page_Load(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles MyBase.Load

' Указание строки подключения.

connString = "server=(local);database=Novelty; TRUSTED_CONNECTION=Yes"

' Это вся информация, которая нам нужна

' для подключения к базе данных. Кроме того, если

' кто-то сможет получить доступ к коду этого файла,

' он не сможет использовать полученные сведения

' для регистрации входа в базу данных.

' Извлечение системной ссылки на указанную строку подключения.

' Это позволяет .NET проверить наличие данной строки

' в куче. Если её нет, то создаётся её экземпляр в

' оперативной памяти и возвращается ссылка

' на нее, а если есть, то возвращается ссылка на нее.

String.Intern(connString)

ShowCustomers

 End Sub

 Private Sub ShowCustomers

' Это простой пример использования функции,

' которая извлекает данные из таблицы tblCustomer

' и отображает их.

' Инициализация объекта подключения строкой

' подключения.

Dim conn As New SqlConnection(connString)

' Затем инициализация объекта-команды

' строкой выполняемой команды SQL.

Dim cmd As New SqlCommand("SELECT * FROM tblCustomer", conn)

conn.Open

Dim dReader As SqlDataReader = _

cmd.ExecuteReader(CommandBehavior.CloseConnection)

While dReader.Read

Response.Write(dReader.GetString(1))

Response.Write(" " & dReader.GetString(2))

Response.Write("<BR>")

End While

dReader.Close

conn.Close

 End Sub

End Class

Обратите внимание на то, что в листинге 11.1 используются пространства имен

System. Data и System. Data. SqlClient, которые содержат все необходимые классы и методы для подключения и опроса базы данных. Учтите, что код в листинге 11.1 является

вспомогательным кодом для Web-страницы default.aspx. Это значит, что Web-страница default.aspx не содержит его, а только отображает результат его выполнения. Полностью код Web-страницы default.aspx показан в листинге 11.2.

ЛИСТИНГ 11.2. КОД Web-страницы default.aspx

<%@ Page Language="vb" AutoEventWireUp="false" Codebehind="default.aspx.vb" Inherits="Novelty.WebForm1"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

 <HEAD>

<title>WebForml</title>

<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">

<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">

<meta name="vs_defaultClientScript" content="JavaScript">

<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">

 </HEAD>

 <body MS_POSITIONING="GridLayout">

<form id="Form1" method="post" runat="server">

</form>

 </body>

</HTML>

В верхней части листинга располагается директива, которая сообщает механизму выполнения ASP.NET о необходимости использования вспомогательного кода из файла default.aspx.vb. После щелчка правой кнопкой мыши на файле default.aspx в окне Solution Explorer и выбора команды Build and Browse (Скомпоновать и просмотреть Web-форму) произойдет следующее. Во-первых, Web-форма скомпилируется в DLL-файл и при каждом последующем вызове этой Web-формы ASP.NET будет использовать ее откомпилированную версию. Во-вторых, откроется окно Web-броузера с отображением результатов выполнения кода, как показано на рис. 11.11. (Чтобы открыть проект данного примера и выполнить приложение, нужно разрешить совместное использование текущего каталога с файлами примера. При работе с операционной системой Windows 2000 для этого щелкните правой кнопкой мыши на имени каталога, т.е. Novelty в данном примере, и выберите в контекстном меню команду Sharing (Совместное использование). Затем выберите вкладку Web Sharing (Совместное использование в Web-среде), переключатель Share this folder (Совместно использовать данный каталог) и в диалоговом окне Edit Alias (Редактировать псевдоним) введите Web-имя каталога, т.е. Novelty в данном примере. — Прим. ред.)

РИС. 11.11. Результат отображения Web-формы default.aspx в окне Web-броузера

НА ЗАМЕТКV

Коды всех примеров в данной книге можно скопировать с Web-страницы книги на Web-сервере Издательского дома "Вильямс" по адресу: www.williamspublishing.com.

Применение элемента управления DataGrid

В первых версиях набора инструментальных средств разработчика .NET Framework SDK для демонстрации примеров итерирования коллекции данных применялся пользовательский элемент управления DataGrid, который имеет очень мало или не имеет вообще ничего общего с элементом управления ActiveX. По сути, он означает использование в Web-форме некоторых шаблонных функций, которые выполняются в серверной части в целях создания HTML-кода для клиентской части. Эта технология обладает очень большими возможностями, поскольку позволяет создавать весьма сложную логику, связанную с пользовательским интерфейсом, в виде повторно используемого компилированного объекта, который полностью безопасен и совместим с любым типом Web-броузера. Дело в том, что серверные элементы управления в итоге создают HTML-код и вопросы совместимости полностью зависят от разработчика.

Поделиться с друзьями: