Guffa | Foto | Programmering

#include jämfört med Server.Execute

Det finns två sätt att inkludera filer, antingen med SSI (server side include) eller med metoden Server.Execute.

SSI:
<!--#include file="sida.asp"-->

Server.Execute:
Server.Execute "sida.asp"

SSI

När du inkluderar filen med SSI så läggs filerna ihop innan ASP-koden kompileras. Det blir alltså precis som om du tagit koden i filen och klistrat in den istället för #include-taggen.

Eftersom SSI körs innan ASP så kan man inte använda ASP-variabler för att styra vilken fil som inkluderas.

Server.Execute

När du använder Server.Execute så körs den anropade filen som en separat sida. När du anropar metoden så kompileras sidan och körs. Den har samma Request- och Response-objekt som sidan som anropar den, men annars är det en isolerad process.

Eftersom Server.Execute körs ifrån ASP så kan man påverka vilken fil som körs. Exempel:

If Request.Querystring("page") = "info" Then
   strPage = "Info.asp"
Else
   strPage = "Start.asp"
End If
Server.Execute strPage

Metoden Server.Execute finns i IIS version 5.0 och senare.

Göran Andersson