DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Andreas Rauch Artikel Drucken
        
Der bessere Include

Kennen Sie den schon...? Es war einmal ein <Include>. Wers benutzt weiß, daß das Include File immer geladen wird und zwar komplett.  Nicht, daß es schlecht gewesen wäre, aber wesentlich komfortabler wäre es doch, wenn man bestimmen kann, was wann geladen wird. Dazu gibt es unter dem IIS 5 oder ASP 3 zwei wichtige neue Befehle. die es in sich haben:

Server.Execute und Server.Transfer

Wie diese Methoden funktionieren, läßt sich wunderbar anhand von 2 kleinen Beispielen testen.

Nehmen wir zunächst mal Server.tranfer unter die Lupe:

Wir erstellen zunächst eine Datei (transfer.asp), in der wir den server.transfer ausführen.

transfer.asp

<%@ Language=VBScript %>
<html>
<head><title>Seite 1</title></head>
<body> Dies ist Seite 1
<br>
<% Server.Transfer "SeiteB.asp" %>
Geschrieben und niemals gesehen
<br>
</body>


Unn nun noch die Seite (SeiteB.asp), die durch server.transfer ausgeführt wird.

SeiteB.asp

<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
Dies ist Seite B
<P>&nbsp;</P>

Können sie sich schon denken, was passiert. SeiteB.asp hat kein End-Tag und dies ist
wohlgemerkt kein Fehler.

Server.transfer bricht ab der Stelle die Seite transfer.asp ab an der die Funktion aufgerufen wird und fährt mit der SeiteB.asp fort als wäre nichts gewesen. Nach dem Laden und Ausführen der SeiteB.asp wird die transfer.asp weiter ausgeführt. Sozusagen eine Call Funtkion.

Was macht nun server.execute?

execute.asp
<%@ Language=VBScript %>
<html>
<head><title>Seite 1</title></head>
<body>Dies ist Seite 1<br>
<% Server.Execute("Seite2.asp") %>
Dies ist Seite 1 zweiter Teil<br>
</body>
</html>


Seite2.asp
<%@ Language=VBScript %>
<HTML>
<HEAD>
</HEAD>
<BODY>
Dies ist Seite 2
</BODY>
</HTML>

Die execute.asp ruft die Seite 2 auf und fährt mit dieser fort. Alles was in der execute .asp noch an Code steckt bleibt komplett unbeachtet. Wir realisieren hier sozusagen eine Call oder Sprungfunktion.

Die Möglichkeiten und Vorteile des Einsatzes sind natürlich groß. Das Include-File  bspw. wird immer geladen und jede Seite immer komplett abgearbeitet. Nicht aber bei den genannten Methoden.

Probieren Sie es ruhig mal aus... aber Achtung. Immer schön darauf aufpassen, daß das HTML Gerüst noch stimmt.

 

 


DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine verknüpften Dokumente
    Keine Links vorhanden

  Erfasst am: 25.01.2001
  Gültig bis: 28.03.2001
3 Ratings
Bewertung: 46,7%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG