NEWSLETTER " EPPYNET.COM - Corso Linguaggio ASP, 5 lez " del 25/03/2006
Utilizziamo ADO e XML in data-binding Lo scopo di questo articolo è prevalentemente didattico. Analizzeremo come visualizzare in modo semplice il risultato di una query attraverso il browser Internet Explorer od un altro browser in grado di supportare nativamente documenti XML . Assumiamo che il lettore abbia delle nozioni di base su ASP e ADO, mentre non è richiesta la conoscenza di XML. Come primo passo realizzeremo una pagina ASP GetXMLData.asp che esegue le seguenti azioni: Successivamente, realizzeremo una pagina HTML ViewTable.htm per visualizzare il risultato di GetXMLData.asp come segue: Ho realizzato e verificato il codice descritto in questo articolo nel seguente ambiente Microsoft: PASSO 1 Realizziamo la pagina GetXMLData.asp per il caricamento dei dati e la conversione in XML Con ADO 2.5 o superiore è possibile salvare un recordset, risultato di una query, in formato XML attraverso il metodo Save: Const adPersistXML =1 Potete notare che ho dichiarato la costante adPersistXML, tuttavia a partire da IIS 4 e ASP 2 è possibile evitarne la definizione, includendo il file "adovbs.inc", distribuito con MDAC 2.5. <!--#include File="../include/adovbs.inc"--> ' ' PASSO 2 Realizziamo la pagina ViewTable.htm per la visualizzazione del risultato della query Per visualizzare il risultato della query utilizziamo una tecnologia, il data-binding , già disponibile con IE 4 e successivamente estesa con il rilascio dell'oggetto XMLDSO (ProgID = Microsoft.XMLDSO e contenuto in MSXML.DLL). Tale tecnologia consente di popolare in modo automatico, una pagina DHTML con un recordset. A partire dal rilascio di IE 5, XMLDSO è stato inserito all'interno del Document Object Model (DOM) con la definizione dell'oggetto XML Data Island. XML Data Island Tale oggetto ha ereditato proprietà, metodi, eventi dell'oggetto COM XMLDSO e può essere istanziato direttamente in HTML in modo molto semplice, come segue: <XML ID="xmldso"></XML> Per caricare i dati XML all'interno dell'XML data island si deve usare il metodo xmldso.XMLDocument.load("../GetXMLData.asp") Questo codice istanzia un Document Object Model (XMLDocument) e successivamente ne carica i dati con il metodo Load. IL metodo Load carica la pagina GetXMLData.asp. Tale pagina scrive nell'oggetto Response, i dati XML che popoleranno la tabella. Di seguito è riportata l'intera procedura: <XML ID="xmldso"></XML> // puntatore al recordset/riga corrente // esegue la query e carica il recordset XML nell'oggetto response: // sposta il puntatore dal recordset/riga corrente alla riga che ha ricevuto il focus Copyright EPPYNET.COM® 2000 All right reserved Ricevi questa newsletter perche' ti sei volontariamente iscritto ai servizi gratuiti di EPPYNET.COM. |