Avatar billede davidfossil Nybegynder
01. marts 2005 - 16:06 Der er 13 kommentarer og
1 løsning

Opbygge og eksekvere .ASPX side "on-the-fly"

Dette er vist nok et meget mærkeligt spørgsmål, men jeg vil nu forsøge alligevel.

Er der muligt ud fra en string eller en stream, der indeholder noget ASP.NET markup (svarende til i en .ASPX) fil, at kunne eksekvere kode som om den faktisk lå i en .aspx fil?

Håber at nogen forstår hvad jeg mener .... :)
Avatar billede snepnet Nybegynder
01. marts 2005 - 19:14 #1
halløjsa :o)
jeg tror godt jeg forstår hvad du spørger om, men kunne du fortælle lidt om hvad det er du har brug for gøre ?
mvh
snep
Avatar billede davidfossil Nybegynder
01. marts 2005 - 22:18 #2
Jeg har noget content i nogle xml filer, som skal præsenteres for brugeren som html.
For at holde samme layout som resten af sitet (der bruger et MasterPage templating system), ville det være smart at kunne "samle" en .aspx fil (som en string) on-the-fly. Den skal i dette tilfælde kun indeholde nogle enkelte tags, rundt om det indhold den henter fra min xml. Herefter skal den genererede .aspx fil vises ligesom hvis den havde været en faktisk fil på serveren.

Har leget en smule med PageParser.GetCompiledPageInstance(), men den kræver stadig at filen er gemt da den loader den ud fra path/url.

Nogle idéer til hvordan det måske kan lade sig give sig?
Eller andre forslag der kan hjælpe i min situation?
Avatar billede snepnet Nybegynder
01. marts 2005 - 23:00 #3
hej igen :o)
jeg er ikke helt sikker på hvad der er der ligger i dine xml-filer... er det noget du kan vise et eksempel på ?
mvh
Avatar billede snepnet Nybegynder
01. marts 2005 - 23:05 #4
altså.... vil du f.eks. i en xml-fil skrive :

<script runat="server">
protected Button1_Click(object sender, EventArgs e)
{
  label1.Text = "yuhah";
}
</script>
<asp:Button id="button1" OnClick="Button1_Click" runat="server"></asp:Button>
<asp:Label id="label1" runat="server"></asp:Label>

eller ?

mvh
Avatar billede davidfossil Nybegynder
02. marts 2005 - 14:20 #5
Jeg er nu gået lidt væk fra den omtalte løsning igen, men har stadig nogle løse ender som jeg godt kunne bruge lidt hjælp til :)

Er det på nogen måde muligt at spørge frameworket for Forms authentication, om brugeren har adgang til en bestem side (ud fra en url/path). Altså kan jeg under eksekveringen af siden hej.aspx afgøre om brugeren har rettigheder til at se siden goddag.aspx ?
Avatar billede snepnet Nybegynder
02. marts 2005 - 17:57 #6
hmmm.... det er ikke noget jeg har rodet med, men en idé kunne være at du lavede en webrequest og fyrede den af i en try catch og se og checke på unauthorized, men det er bare et hurtigt skud fra hoften - ved ikke om der er en vaks måde at gøre det på.
mvh
Avatar billede snepnet Nybegynder
02. marts 2005 - 18:02 #7
altså noget i denne stil :

string url = String.Format(<someurl>);
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);   
HttpWebResponse response = null;
request.Credentials = CredentialCache.DefaultCredentials;
try
{
    response = (HttpWebResponse)request.GetResponse();
}

catch(Exception er)
{
    // du kan lige starte sådan her, og se om du kan få en fornuftig exceptiontype.
}

finally
{
    if(response != null)
        response.Close();
}

Du kan da give det et forsøg :o)

mvh
Avatar billede davidfossil Nybegynder
02. marts 2005 - 18:27 #8
Det tør jeg ikke rigtig rode mig ud i. Denne procedure ville skulle ske ved praktisk talt hvert request til sitet, så det er nok lidt for voldsomt at skulle lege HttpRequest...

Andre forslag?
Hvis ikke det kan lade sig gøre, må jeg vel bare finde på noget andet :)
Avatar billede burningice Nybegynder
03. marts 2005 - 13:34 #9
der er også sådan noget som det her:

http://www.metabuilders.com/Tools/ParsingContainer.aspx
Avatar billede snepnet Nybegynder
04. marts 2005 - 13:07 #10
hvis du bruger vanlig formsauthentication tror jeg under alle omstændigheder at et request er nødvendigt, så selvom der skulle være en smart programmatisk shortcut til det - ville det sikkert også afstedkomme et request.
mht til det med parsing så ja .... det ser ud som om den du har linket til er en addressering af dit oprindelige spørgsmål -  den er du måske gået tilbage til :o)
mvh
Avatar billede snepnet Nybegynder
04. marts 2005 - 13:08 #11
hov.... havde slet ikke set at det var dig der havde sendt linket til metabuilders cyberfessor (fremgår nok af den tekst jeg skrev at jeg troede at det var david :o)
- sorry.
mvh
Avatar billede burningice Nybegynder
04. marts 2005 - 17:18 #12
ja.. som du siger, snepnet, så er det nok svært at lave et tjek om man har adgang til en given side midt i et request. Eneste mulighed er nok at indlæse web.config-filen manuelt og parse den for allowed.
Avatar billede davidfossil Nybegynder
30. marts 2006 - 22:06 #13
snep : her skylder jeg dig vist også noget points. kom med et svar :)
Avatar billede snepnet Nybegynder
31. marts 2006 - 18:38 #14
kommer her :o)
mvh
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester