Xml

mercoledì 20 ottobre 2004 - 13.09

mon78 Profilo | Junior Member

Ho creato in una web form di una web application un dataset (ds) a cui ho associato il risultato di una query sql su un database; poi ho creato un oggetto xmldatadocument a cui ho associato il dataset (XmlDataDocument doc=new XmlDataDocument(ds)); Ora devo creare un file xml a cui associo il contenuto di xmldatadocument; poi devo visualizzare il contenuto del file xml; nn so proprio da dove partire. mi date 1 mano? Grazie mille

mon78 Profilo | Junior Member

Grazie veramente tante. Comunque se creo la query con 'for xml auto', quando scrivo 'System.XML.XmlReader reader = command.ExecuteXMLReader();' mi dà l'errore:

System.Data.SqlClient.SqlCommand non contiene una definizione per ExecuteXMLReader

Se invece mi creo la query normale, quando scrivo

Dim doc As New XmlDocument()
doc.LoadXml(ds.GetXml)
doc.Save("ExportSql.xml")

nn trovo il file xml 'ExportSql.xml'; dove sta?
Con
Response.ContentType = "text/xml"
Response.BinaryWrite(tuobuffer)

cosa devo mettere in tuobuffer?
Scusa ma nn sto riuscendo a capire

mon78 Profilo | Junior Member

OK
sto facendo così:
doc.Save("ExportSql.xml"); //il file viene creato
Response.ContentType = "text/xml";
FileStream MyFileStream;
long FileSize;
MyFileStream = new FileStream("ExportSql.xml",FileMode.Open);
FileSize = MyFileStream.Length;
byte[] Buffer = new byte[(int)FileSize];
MyFileStream.Read(Buffer, 0, (int)FileSize);
MyFileStream.Close();
Response.BinaryWrite(Buffer);

A questo punto quando visualizzo la pagina nel browser viene visualizzato il file xml, ma alla fine del file c'è scritto:

Impossibile visualizzare la pagina XML
Impossibile visualizzare l'input XML tramite il foglio di stile XSL. Correggere l'errore, quindi fare clic su Aggiorna, oppure riprovare in un momento successivo.
--------------------------------------------------------------------------------
Una dichiarazione DOCTYPE non può essere esterna al prologo. Errore durante l'elaborazione della risorsa "http://localhost/tool-admin/nuovapagina1.aspx". Riga 195, posizione 11
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
----------^

nn capisco il perchè. Scusa ancora per il disturbo

ccaribe Profilo | Newbie

>Ho creato in una web form di una web application un dataset (ds) a cui ho associato il risultato di una query >sql su un database; poi ho creato un oggetto xmldatadocument a cui ho associato il dataset
>(XmlDataDocument doc=new XmlDataDocument(ds));
Perchè tutto questo girò?
da sql puoi recuperare direttamente un file xml
http://www.dotnethell.it/tips/XMLSQLServer.aspx

>Ora devo creare un file xml a cui associo il contenuto di xmldatadocument;
Ancora più semplice dal dataset fai Dataset.GetXml
http://www.dotnethell.it/tips/DatabaseXML.aspx

>poi devo visualizzare il contenuto del file xml; nn so proprio da dove partire.
Basta che fai
Response.ContentType = "text/xml"
Response.BinaryWrite(tuobuffer)
> mi date 1 mano?
Magari ti ho dato tutto il braccio :-)
>Grazie mille
Prego


Daresti una mano anche a me? Come si può fare la stessa cosa con Asp classic?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5