Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений




Скачать 444.1 Kb.
НазваниеУчебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений
страница4/5
Дата конвертации19.04.2013
Размер444.1 Kb.
ТипУчебно-методическое пособие
1   2   3   4   5

Hello, world!

") %>

Так производится запись во внутренний буфер объекта Response. Когда скрипт заканчивает работу, весь буфер выдается клиенту. Надо заметить, что клиент получает "чистый" HTML, таким образом, программы на ASP.NET не зависят от клиентского ПО, что очень важно. Если внутри выводимой строки нужно использовать кавычку, кавычка удваивается. Другие методы и свойства Response позволяют управлять выводом. Так Response.Buffer регулирует, получает ли клиент данные по мере из записи в Response, или все сразу по завершении исполнения страницы. Метод Response.Redirect перенаправляет браузер на другую страницу. Чтобы им пользоваться, нельзя до него на странице использовать Response.Write.

Программа на ASP.NET не может явно спросить пользователя о чем-то. Она получает данные из других страниц, либо через URL. Передаваемые параметры помещаются во входной поток и доступны через объект Request. Чтобы передать переменную var в программу test.asp, надо написать:

test.asp?var=abc

Чтобы из программы получить значение этой переменной, надо написать:

var = Request("var")

Несколько переменных разделяется знаком &:

test.asp?var1=abc&var2=def

Кроме того, чтобы задавать параметры в URL, можно воспользоваться формами HTML. В вызывающей странице пишем так:












Исходная форма имеет вид:




При этом пользователь увидит форму из одного поля ввода (var1), в нем будет значение по умолчанию " default". Второе поле (var2) будет невидимо и будет передавать всегда фиксированное значение " значение 2". Кнопка "Submit Form" завершает заполнение формы и передает все переменные на test.asp (action).

Если method="get", переменные передаются через URL: test.asp?var1=default&var2=value2.

Если method="post", передаются вместе с запросом так, что внешне передача переменных не заметна.

2.2 Установка программного обеспечения для ASP.NET


Отметим, что для поддержки ASP.NET, как правило, необходим Internet Information Server и установленный Microft Net Framework. Это программная технология от компании Microsoft, предназначенная для создания обычных программ и WEB-приложений.

Установка программного обеспечения начинается со скачивания дистрибутива .NET Framework (с сайта Microsoft). ASP.NET распространяется как составная часть .NET Framework. Перед установкой .NET Framework, необходимо установить Internet Information Server (IIS), который, как правило, поставляется вместе с дистрибутивом Windows и устанавливается через меню «Пуск/Панель управления/Установка и удаление программ/Установка компонентов Windows».



Рис. 6. Инсталляция WEB-сервера IIS

Одной из основных идей Microsoft .NET является совместимость различных служб, написанных на разных языках. Например, служба, написанная на C++ для Microsoft .NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследованный от класса, написанного на Visual Basic .NET, а исключение, созданное методом, написанным на C#, может быть перехвачено и обработано в Delphi. Каждая библиотека (сборка) в .NET имеет сведения о своей версии, что позволяет устранить возможные конфликты между разными версиями сборок.

После установки .NET FrameForks, в Администраторе IIS можно постмотреть версию ASP.NET и месторасположения конфигурационного файла (рис.7).



Рис. 7. Просмотр свойств ASP.NET после инсталляиции .Net Framework

Отметим, что файлы ASP.NET имеют, как правило, расширение «*.aspx».

Обратите внимание, что после установки Net Framework такие файлы обрабатываются в IIS с помощью ISAPI фильтра – aspnet_isapi.dll (рис. 8).



Рис. 8. Просмотр ссылки на обработчик сценариев ASP.NET в Администраторе IIS.

Также для каждого виртуального каталога IIS можно создать единственный файл global.asax, с помощью которого управлять поведением сайта в зависимости от событий, связанных с поведением пользователей (например, события начала и окончания пользовательской сессии).

Пример, файла global.asaх.


2.3 Полезные конструкции на ASP.NET


Если на сервере установлены дополнительные компоненты, их можно использовать из ASP.NET Стандартные объекты (например, из библиотек ADO (Connection и Recordset) и Scripting (Dictionary, FileSystemObject)) доступны всегда. Установка новой компоненты обычно состоит в копировании dll-файла в каталог на сервере и ее регистрации с помощью программы regsvr32.exe.

Создать экземпляр объекта можно так:

Set var = Server.CreateObject("Class.Object")

Class.Object указываются в документации на компоненту.

В переменной var запоминается ссылка на созданный экземпляр объекта. Когда объект не нужен, ссылку нужно обнулить с помощью команды:

Set var = Nothing

Отметим что для передачи данных между страницами, можно воспользоваться механизмом сессий. ASP.NET, используя cookies, предоставляет программисту специальное средство - объект Session (сессия). Сессия стартует, когда новый пользователь обращается к любому aspx-файлу приложения. Сессия заканчивается при отсутствии активности пользователя в течение, как правило, 20 минут. Специальный объект Session хранит состояние сессии. Туда можно записывать переменные, которые доступны из любой страницы в этой сессии.

Записать данные в этот объект можно следующим образом:

Session("var") = var

Для считывания значения можно использовать такую запись:

var = Session("var")

Наряду с объектом Session существует объект Application. Если сессия создается для каждого нового пользователя, до Application существует в единственном экземпляре, и может использоваться всеми страницами приложения.

Application("var") = var

var = Application("var")

Чередование ASP.NET/HTML


Если нужно выдать большой кусок HTML, можно не пользоваться Response.Write. Если в asp-файле встречается кусок текста вне скобок <% %>, он трактуется просто как HTML, который надо вывести. Пример:

<% If var="VAL" Then %>

Выполняется первый блок HTML-кода



<% Else %>

Выполняется другой блок HTML-кода



Обратите внимание. В ASP.NET в отличие от ASP, обязательно нужно объявлять тип используемых переменных. Обычно это деляается вначале ASP.NET скрипта.

<%

Dim dbs As Object

Dim rs1 as Object

dbs = CreateObject("ADODB.Connection")

…………………………………………………..

%>

В противном случае выдается ошибка.


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


2.4 Управляющие структуры ASP.NET


Вы можете использовать операторы цикла, такие как for и while.

<%

While (условие)

‘Здесь некоторый код на VB.NET

End While

for i=1 To J

‘Здесь некоторый код на VB.NET

Next i

%>


Отметим, что логические операторы также имеют довольно простую форму, например, следующую.

IF Not VarType(rs3.Fields(3).Value)=1 Then

var_name=CStr(rs3.Fields(3).Value)

else

var_name=""

End if

В этом примере, функция VarType() проверят соответствие переменной определенному типу по значению, и в зависимости, от результата, либо, считывает значение из СУБД, либо записывает в переменную var_name пустое значение. Функция CStr выполняет приведение текущего типа переменной к текстовому.

2.5 Работа с файловой системой


Для ASP.NET при работе с файловой системой целесообразно использовать объектную модель FSO (File System Object).

Ниже представлен пример создания файла на жестком диске с помощью ASP.NET скрипта с последующей записей значений, извлекаемых из некоторой СУБД, в формате XML.

<%

' rootPath – переменная, в которой храниться путь к папке, в которой создаем файл

‘rs2.Fields(2).Value – название файла (извлекаемое из СУБД)

fso = CreateObject("Scripting.FileSystemObject")

file = fso.CreateTextFile(rootPath+"\"+cStr(rs2.Fields(2).Value) + ".xml",true,true)

file.WriteLine("")

file.WriteLine("")

file.WriteLine(" ")

‘Здесь некторый блок кода, формирующий XML-поток

file.WriteLine("
")

file.Close




2.6 Базы данных и ASP.NET


Из ASP.NET можно легко и просто работать с любыми СУБД. Это делается через две промежуточные технологии: ODBC и ADO (ADO.NET).

ODBC позволяет организовать доступ к любым СУБД через унифицированный интерфейс с помощью языка SQL. Специфика конкретных СУБД учитывается при помощи специальных драйверов БД. Такие драйверы существуют для всевозможных СУБД (в частности SQL Server, Oracle, Access, FoxPro). Поддержка ODBC обеспечивается на уровне операционной системы Windows. Настройка – через Панель управления/ODBC.



Рис. 9. Настройка источников данных ODBC.

Базовым понятием является источник данных или data source. Источник данных – это совокупность сведений о базе данных, включая ее драйвер, имя компьютера и файла, параметры. Чтобы воспользоваться базой, необходимо создать источник данных для нее. Важно, чтобы источник данных был "системным", в отличии от "пользовательского". После этого надо лишь знать имя источника данных.

ADO – это совокупность объектов, доступных из ASP.NET (ASP), позволяющих обращаться к источнику данных ODBC (или OLE DB). Фактически нужны лишь 2 объекта – Connection, представляющий соединение с базой данных и Recordset, представляющий набор записей, полученный от источника. Сначала необходимо открыть соединение, потом к нему привязать Recordset, потом, пользуясь методами Recordset, обрабатывать данные.


Пример 1. Доступ к СУБД через имя источника ("Data-Source-Name"), настроенного в Администраторе источников ODBC

Dim Conn, RS, strSQL, strOut

strOut = ""

Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Open "Data-Source-Name"

Set RS = Server.CreateObject("ADODB.Recordset")

strSQL = "SELECT * FROM AGENTS ORDER BY USER_ID"

RS.Open strSQL, Conn

RS.MoveFirst

strOut = strOut & "
Here is the data:"

strOut = strOut & ""

strOut = strOut & ""

Do While Not RS.EOF

strOut = strOut & ""

strOut = strOut & ""

strOut = strOut & ""

strOut = strOut & ""

RS.MoveNext

Loop

strOut = strOut & "
USER_IDName
" & RS.Fields("USER_ID") & " " & RS.Fields("NAME") & "
"

strOut = strOut & "
"

strOut = strOut & "That's it!"

RS.Close

Set RS = Nothing

Conn.Close

Set Conn = Nothing

Response.Write strOut

%>


Пример 2. Доступ к СУБД через имя драйвера (на примере MS SQL Server).

dbs = CreateObject("ADODB.Connection")

dbs.ConnectionString = "driver={SQL Server};server=.\SQLEXPRESS;uid=sa;pwd=;database=GRAF"

dbs.ConnectionTimeout = 5

dbs.Open

dbs.CommandTimeout = 0


Отметим, что в настоящее время для ASP.NET рекомендуется также использовать объектную модель ADO.NET, существенно отличающуюся от объектной модели ADO.

ADO.NET поддерживает модель поставщиков. Поставщики для конкретного источника данных можно определить как совокупность классов в одном пространстве имен созданных специально для данного источника данных. Эта особенность несколько размыта для источников данных OleDb, ODBC, так как они по своей сути созданы для работы с любой базой данных совместимых с OLE и ODBC.

В подключаемой части ADO.NET имеются следующие основные классы подсоединенных объектов:

  • Connection. Этот класс, позволяющий устанавливать подключение к источнику данных. ( OleDbConnection, SqlConnection, OracleConnection)

  • Transaction. Объект транзакций (OleDbTransaction, SqlTransaction, OracleTransaction. В ADO.NET имеется пространство имен System.Transaction)

  • DataAdapter. Это своеобразный шлюз между автономными и подключенными аспектами ADO.NET. Он устанавливает подключение, и если подключение уже установлено, содержит достаточно информации, чтобы воспринимать данные автономных объектов и взаимодействовать с базой данных. (DataAdapter - SqlDataAdapter, OracleDataAdapter)

  • Command. Это класс представляющий исполняемую команду в базовом источнике данных.

  • Parameter. Объект параметр команды.

  • DataReader. Это эквивалент конвейерного курсора с возможностью только чтения данных в прямом направлении.

Объектная модель ADO.NET



Рис. 10. Объектная модель ADO.NET.

Обратите внимание. Для использования ADO.NET в ASP.NET нужно вначале импортировать соответствующее пространство имен.

<% 'ДЛЯ ADO Managed Provider %>

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

<%@ Import Namespace="System.Data.ADO" %>

<% 'ДЛЯ SQL Managed Provider %>

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

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

Пример 3. Подключение к СУБД Access, считывание данных при помощи ADO.NET и вывод на WEB-страницу

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

<%@ Import Namespace="System.Data.ADO" %>

<%

'путь к бд и имя таблицы для выполнения запроса
Dim DBFileName As String = "db\db.mdb"
Dim DBTableName As String = "[TableName]"
'инициализируем объекты для работы с бд
Dim cn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBFileName)
Dim cmd As New OleDb.OleDbCommand("SELECT * FROM " & DBTableName, cn)
Dim da As New OleDb.OleDbDataAdapter(cmd)
Dim tbl As New DataTable
'заполняем набор данных
da.Fill(tbl)
'выводим данные
For Each Row As DataRow In tbl.Rows

Response.Write(Join$(Row.ItemArray())+"
")

Next Row
'освобождаем ресурсы
tbl.Dispose()
da.Dispose()
cmd.Dispose()
cn.Dispose()

%>


1   2   3   4   5

Похожие:

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconОтчет по обеспеченности учебниками; Оформление новых учебников
...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconЛ. А. Москвина Проектирование визуальных интерфейсов и приложений баз данных
В настоящем учебном пособии затронуты только две из перечисленных выше возможностей Delphi, а именно проектирование визуальных интерфейсов...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие Таганрог 2010 удк 67. 99(2)94я73 Батычко В. Т. Учебно-методическое пособие по курсу «Криминология»
Батычко В. Т. Учебно-методическое пособие по курсу «Криминология». – Таганрог. Изд-во тти юфу, 2010. – С. 29

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие по курсу «культурология» для самостоятельной подготовки к семинарским занятиям студентов угма
Данное Учебно-методическое пособие включает тематический план лекций и семинарских занятий, перечень рекомендуемой литературы, основной...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconМетодические указания к лабораторным работам по курсу "Базы данных"
Методические указания к лабораторным работам по курсу "Базы данных": Работа с базами данных. Субд access. / Московский государственный...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconЛ. Ф. Лебеденко С. Г. Лапова базы данных
Методические указания предназначены для использования в процессе лабораторного практикума и курсового проектирования по курсу "Базы...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие Ярославль, 2009 Скопин А. А., Разработка и технологии производства рекламного продукта: Учебно-методическое пособие. Ярославль, «Ремдер», 2009 118 с
Учебное пособие предназначено для студентов, аспирантов, преподавателей. Актуальность рассматриваемых вопросов делает пособие привлекательным...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие Волгоград 2008
Учебно-методическое пособие предназначено для студентов направления 210400 Телекоммуникации и специальности 210406 Сети связи и системы...

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие по курсу философия права
Учебно-методическое пособие по курсу «Философия права». Таганрог: Изд-во трту, 2005. 23 с

Учебно-методическое пособие по курсу «Базы данных» по теме разработка web-приложений iconУчебно-методическое пособие по специальному курсу рассмотрено и одобрено методической комиссией юридического факультета. Печатается по решению совета юридического факультета Кубанского государственного аграрного университета
Басацкий Е. М., Ильницкая Л. И. Процессуальные решения на предварительном следствии: Учебно-методическое пособие по специальному...


Разместите кнопку на своём сайте:
lib.convdocs.org


База данных защищена авторским правом ©lib.convdocs.org 2012
обратиться к администрации
lib.convdocs.org
Главная страница