Поделиться через


Сценарий сохраняемости набора записей XML

В этом сценарии вы создадите приложение Active Server Pages (ASP), которое сохраняет содержимое объекта Recordset непосредственно в объект ASP Response.

Примечание

Для этого сценария требуется, чтобы на сервере был установлен internet information Server 5.0 (IIS) или более поздней версии.

Возвращаемый набор записей отображается в Интернете Обозреватель с помощью объекта DataControl (RDS).

Для создания этого сценария необходимо выполнить следующие действия.

  • Настройка приложения

  • Получение данных

  • Отправка данных

  • Получение и отображение данных

Шаг 1. Настройка приложения

Создайте виртуальный каталог IIS с именем XMLPersist с разрешениями скрипта. Создайте два новых текстовых файла в папке, на которую указывает виртуальный каталог, один с именем "XMLResponse.asp", другой с именем "Default.htm".

Шаг 2. Получение данных

На этом шаге вы напишете код, чтобы открыть набор записей ADO и подготовиться к его отправке клиенту. Откройте файл XMLResponse.asp в текстовом редакторе, например Блокноте, и вставьте следующий код.

<%@ language="VBScript" %>  
  
<!-- #include file='adovbs.inc' -->  
  
<%  
  Dim strSQL, strCon  
  Dim adoRec   
  Dim adoCon   
  Dim xmlDoc   
  
  ' You will need to change "MySQLServer" below to the name of the SQL   
  ' server machine to which you want to connect.  
  strCon = "Provider=sqloledb;Data Source=MySQLServer;Initial Catalog=Pubs;Integrated Security=SSPI;"  
  Set adoCon = server.createObject("ADODB.Connection")  
  adoCon.Open strCon  
  
  strSQL = "SELECT Title, Price FROM Titles ORDER BY Price"  
  Set adoRec = Server.CreateObject("ADODB.Recordset")  
  adoRec.Open strSQL, adoCon, adOpenStatic, adLockOptimistic, adCmdText  

Обязательно измените значение Data Source параметра в strCon на имя компьютера Microsoft SQL Server.

Не закрывайте файл и переходите к следующему шагу.

Шаг 3. Отправка данных

Теперь, когда у вас есть набор записей, необходимо отправить его клиенту, сохранив его в виде XML в объекте ASP Response. Добавьте следующий код в конец XMLResponse.asp.

  Response.ContentType = "text/xml"  
  Response.Expires = 0  
  Response.Buffer = False  
  
  Response.Write "<?xml version='1.0'?>" & vbNewLine  
  adoRec.save Response, adPersistXML  
  adoRec.Close  
  Set adoRec=Nothing  
%>  

Обратите внимание, что объект ОТВЕТА ASP указан в качестве места назначения для метода Сохранения набора записей. Назначением метода Save может быть любой объект, поддерживающий интерфейс IStream, например объект ADO Stream (ADO), или имя файла, включающее полный путь, в который необходимо сохранить набор записей.

Перед переходом к следующему шагу сохраните и закройте ФАЙЛ XMLResponse.asp. Кроме того, скопируйте файл adovbs.inc из папки установки библиотеки ADO по умолчанию в ту же папку, в которой был сохранен файл XMLResponse.asp.

Шаг 4. Получение и отображение данных

На этом шаге вы создадите HTML-файл со встроенным объектом DataControl Object (RDS), указывающим на файл XMLResponse.asp, чтобы получить набор записей. Откройте default.htm с помощью текстового редактора, например Блокнота, и добавьте следующий код. Замените "sqlserver" в URL-адресе именем сервера.

<HTML>  
<HEAD><TITLE>ADO Recordset Persistence Sample</TITLE></HEAD>  
<BODY>  
  
<TABLE DATASRC="#RDC1" border="1">  
  <TR>  
<TD><SPAN DATAFLD="title"></SPAN></TD>  
<TD><SPAN DATAFLD="price"></SPAN></TD>  
  </TR>  
</TABLE>  
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="RDC1">  
   <PARAM NAME="URL" VALUE="XMLResponse.asp">  
</OBJECT>  
  
</BODY>  
</HTML>  

Закройте файл default.htm и сохраните его в той же папке, в которой вы сохранили XMLResponse.asp. Используя Internet Обозреватель 4.0 или более поздней версии, откройте URL-адрес https:// sqlserver/XMLPersist/default.htm и просмотрите результаты. Данные отображаются в привязанной таблице DHTML. Теперь откройте URL-адрес https:// sqlserver /XMLPersist/XMLResponse.asp и просмотрите результаты. Отобразится XML-код.

См. также:

Метод Save
Сохранение записей в формате XML