11. maj 2012 - 14:12Der er
25 kommentarer og 1 løsning
Fange indhold fra databasedreven ASP side i C#
Jeg sidder og prøver at fange indholdet af en databasedreven ASP side i C#.
Selve siden (fileName) som jeg forsøger at læse indeholder et udtræk fra en database. Når jeg bruger nedenstående kode, så læser den selve kildekoden til ASP siden, men den læser ikke den genererede HTML, og det er den, jeg er interesseret i.
WebResponse objResponse; WebRequest objRequest = HttpWebRequest.Create(fileName); objResponse = objRequest.GetResponse(); StreamReader areader = new StreamReader ((objResponse.GetResponseStream())); a = areader.ReadToEnd ();
Nogen genier, der let kan modificere koden, så den læser indholdet og ikke kildekoden? (Jeg er i øvrigt ikke vant til c# overhovedet...)
Hehe - ja, det ville være et problem, hvis ikke det hele lå lokalt på min maskine og blev drevet af en webmatrix-installation. Der er mao ikke hul igennem til omverdenen.
Har du evt. en idé om, hvordan jeg får HTML-indholdet og ikke kildekoden?
Og ASP burde være enablet. Selve den side, jeg forsøger at fange, bliver afviklet fint, når jeg bare tilgår den i en almindelig browser. Det er kun, når jeg forsøger at fange koden som nu, at jeg får kildekoden hevet ud.
fileName henviser til en asp side (der hedder read.asp), der har følgende indhold (+ lidt body osv):
<% set db=Server.Createobject("ADODB.Connection") db.open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & server.mappath("/App_Data/Olsen.accdb") strSQL = "SELECT tekst,titel FROM tblArtikler WHERE id = 593" set rsArtikel = db.execute(strSQL) response.write(unescape(rsArtikel("titel"))&"<br>") response.write(unescape(rsArtikel("tekst"))&"<br>") %>
Lige pt. er det skrevet statisk, men det er meningen, at jeg vil medsende et parameter med idnr.
Filename henviser til en non-physical-path. Jeg har forsøgt at ændre det til fysisk sti, men det vil scriptet ikke acceptere (og jeg er som sagt ikke skide stærk i C#)
OldFileName er et parameter, der bliver overført i URL'en. Problemet er så, at den fil, som den fanger og læser ikke bliver afviklet som ASP. Men den læser kildekoden.
Jeg har nu hardcodet fileName til http:/localhost:20855/Diff/SampleFiles/readOne.asp
Og nu får jeg en anden fejl: The Authority/Host could not be parsed.
Exception Details: System.UriFormatException: Invalid URI: The Authority/Host could not be parsed. Line 115: WebRequest objRequest = HttpWebRequest.Create(fileName);
Progress :-) Er det noget sikkerhedsnoget, der gør, at den ikke må læse en ASP-fil? Hvilket jo er underligt, for den måtte gerne læse kildekoden, da det var en relativ sti.
Så får Arne point og I får begge tusind tak for hjælpen :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.