Partager via


Scénario de persistance des recordsets XML

Dans ce scénario, vous allez créer une application ASP (Active Server Pages) qui enregistre le contenu d’un objet Recordset directement dans l’objet Response ASP.

Notes

Ce scénario nécessite qu’Internet Information Server 5.0 (IIS) ou version ultérieure soit installé sur votre serveur.

Le Recordset retourné est affiché dans Internet Explorer à l’aide d’un DataControl Object (RDS).

Les étapes à suivre pour créer ce scénario sont les suivantes :

  • Configurer d’application

  • Obtenir les données

  • Envoyer les données

  • Recevoir et afficher les données

Étape 1 : Configurer l’application

Créez un répertoire virtuel IIS nommé « XMLPersist » avec des autorisations de script. Créez deux nouveaux fichiers texte dans le dossier vers lequel pointe le répertoire virtuel, respectivement nommés « XMLResponse.asp » et « Default.htm ».

Étape 2 : Obtenir les données

Dans cette étape, vous allez écrire le code pour ouvrir un Recordset ADO et préparer son envoi au client. Ouvrez le fichier XMLResponse.asp dans un éditeur de texte tel que le Bloc-notes, puis insérez le code suivant.

<%@ 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  

Veillez à modifier la valeur du paramètre Data Source en strCon pour qu’elle corresponde au nom de votre ordinateur Microsoft SQL Server.

Laissez le fichier ouvert et passez à l’étape suivante.

Étape 3 : Envoyer les données

Maintenant que vous disposez d’un Recordset, vous devez l’envoyer au client en l’enregistrant au format XML dans l’objet Response ASP. Ajoutez le code suivant au bas du fichier 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  
%>  

Notez que l’objet Response ASP est spécifié comme destination pour la méthode Save du Recordset. La destination de la méthode Save peut être tout objet prenant en charge l’interface IStream, tel qu’un objet Stream (ADO) ou un nom de fichier incluant le chemin d’accès complet de l’emplacement où enregistrer le Recordset.

Enregistrez et fermez le fichier XMLResponse.asp avant de passer à l’étape suivante. Copiez également le fichier adovbs.inc, du dossier d’installation de la bibliothèque ADO par défaut vers le dossier dans lequel vous avez enregistré le fichier XMLResponse.asp.

Étape 4 : Recevoir et afficher les données

Dans cette étape, vous allez créer un fichier HTML avec un DataControl Object (RDS) incorporé pointant vers le fichier XMLResponse.asp pour obtenir le Recordset. Ouvrez le fichier default.htm dans un éditeur de texte tel que le Bloc-notes, puis ajoutez le code suivant. Dans l’URL, Remplacez « sqlserver » par le nom de votre serveur.

<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>  

Fermez le fichier default.htm et enregistrez-le dans le dossier dans lequel vous avez enregistré le fichier XMLResponse.asp. À l’aide d’Internet Explorer 4.0 ou version ultérieure, ouvrez l’URL https://sqlserver/XMLPersist/default.htm et observez les résultats. Les données s’affichent dans une table DHTML liée. Ouvrez maintenant l’URL https:// sqlserver /XMLPersist/XMLResponse.asp et observez les résultats. Le XML s’affiche.

Voir aussi

Save, méthode
Persistance des enregistrements au format XML