Geschrieben von: Christian Koller
Kategorie: ASP Grundlagen
This printed page brought to you by AlphaSierraPapa
Am Anfang einer jeden ASP Seite kann man @-Direktiven einsetzen, die den Internet Information Server (IIS) anweisen wie eine ASP Seite zu verarbeiten ist. So kann man zum Beispiel angeben, in welcher Sprache - ob Visual Basic Script oder JScript - die Befehle der ASP Seite geschrieben sind.
Standardmäßig ist auf einem IIS die Sprache VBScript als die Default-Sprache eingestellt. Jedoch kann dieser Wert für jede Web Site oder jedes Verzeichnis eines IIS einzeln eingestellt werden.
Die @-Direktive in der ersten Zeile des nun folgenden Skripts bestimmt, daß als Sprache der ASP Seite VBScript verwendet wurde:
<%@LANGUAGE=VBScript %> <% Option Explicit Dim objConn, objRecordset …
Eine ASP @-Direktive muß immer in der ersten Zeile einer ASP Seite stehen. Die Direktive selbst wird durch den Klammeraffen (@) angezeigt:
<% @Direktive=Wert %>
Werden mehrere Direktiven benutzt, so werden sie einfach in der ersten Zeile inklusive der @-Zeichen nacheinander geschrieben:
<% @Direktive1=Wert1 @Direktive2=Wert2 %>
Die fünf @-Direktiven, die unter IIS 5.0 eingesetzt werden können, lauten:
@CODEPAGE | Codeseite festlegen |
@ENABLESESSIONSTATE | Verfolgen von User Sessions |
@LANGUAGE | Skriptsprache (VBScript, JScript) einstellen |
@LCID | Gebietsschema ID vorgeben |
@TRANSACTION | Skript als Transaktion behandeln |
Die @-Direktiven (auch @-Anweisung, oder @-Verarbeitungsanweisung) werden wie folgt eingesetzt:
Die @EnableSessionState Direktive erlaubt ihnen einzustellen, ob User-Sessions ("Sitzungen") verfolgt werden oder nicht. Wenn sie auf einer ASP Seite keine Session Variablen benötigen, um Userdaten zu speichern oder darauf zuzugreifen, so können sie die @EnableSessionState Direktive auf False setzen:
<% @ ENABLESESSIONSTATE = False %>Dieser Befehl bewirkt, daß der IIS den Session Cookie des Browsers weder ausliest, noch setzt. Daher wird die Ausführung der ASP Seite beschleunigt, was insbesondere bei großen Websites eine wichtige Rolle spielt.
Die @LCID (Local Identifier ID) Direktive legt das Gebietsschema fest, das mit der ASP Seite verwendet wird. Das Gebietsschema wiederrum legt fest, welche Trennzeichen (Punkt oder Beistrich) als Komma bei Zahlenwerten verwendet wird, oder in welcher Reihenfolge bei einem Datum Tag, Monat und Jahr angegeben werden.
Um Deutsch als Gebietsschema einer ASP Seite zu benutzen, geben sie folgende @-Direktive in die erste Zeile:
<% @LCID = 1031 %>Die Zahl 1031 kennzeichnet das Standard-Gebietschema für Deutsch.
Unter anderem gelten folgende Werte für die entsprechenden Gebietsschemata:
Schema | LCID | Schema | LCID |
---|---|---|---|
Dänisch | 1030 | Griechisch | 1032 |
Deutsch | 1031 | Italienisch | 1040 |
Englisch (AUS) | 3081 | Niederländisch | 1043 |
Englisch (UK) | 2057 | Portugisisch | 2070 |
Englisch (USA) | 1033 | Schwedisch | 1053 |
Finnisch | 1035 | Spanisch | 1034 |
Französisch | 1036 |
Wenn sie eine Webapplikation auf der deutschen Version eines Webservers (wie IIS oder PWS) testen, jedoch bei einem englischen Provider (wie InnerHost oder DataReturn) ihre ASP Seiten betreiben, so kann es durchaus zu Problemen kommen. @LCID ist dafür verantwortlich, wie Zahlen und Datumswerte formatiert werden, bevor sie dargestellt werden.
Folgendes Beispiel demonstriert ihnen die Problematik:
<% @LCID=1031 %> <% Response.Write Now Response.Write "<BR>" Response.Write 3.14159 %>Die ID auf 1031 (Deutsch) gesetzt liefert:
04.04.00 00:47:20 3,1415926Hingegen liefert eine ID von 1033 (Englisch, USA):
4/4/00 12:47:20 AM 3.14159Es ist daher ratsam, auf jeder ASP Seite die entsprechende LCID anzugeben um nicht in Konflikt mit der voreingestellten LCID des Servers zu kommen.
Die @Codepage-Direktive legt den Zeichensatz (inklusive Zahlen-, Satz- und Sonderzeichen) fest, der für die ASP Seite verwendet werden soll.
Die folgenden Zeichensätze stehen unter Windows zur Verfügung:
Zeichensatz | CODEPAGE | Zeichensatz | CODEPAGE |
---|---|---|---|
Arabisch | 1256 | Japanisch | 932 |
Baltisch | 1257 | Koreanisch | 949 |
Chinesisch | 950 | Osteuropäisch | 1250 |
Cyrillisch | 1251 | Türkisch | 1254 |
Griechisch | 1253 | Unicode | 1200 |
Hebräisch | 1255 | USA (ANSI) | 1252 |
Diese @-Direktive wird benutzt, um ein Skript als Transaktion zu behandeln. Um alle Objektaufrufe in einer ASP Seite in einer Transaktion laufen zu lassen, greift der Webserver auf den Microsoft Transaction Server (MTS) zurück, der die Transaktion verwaltet.
Die @Transaction Direktive kann auf folgende Werte gesetzt werden: Required, Requires_New, Supported, Not_Supported. Für nähere Erläuterungen zur @Transaction Direktive, Transaktionen und dem MTS sehen sie in der MSDN, Platform SDK, oder der IIS (und PWS) Dokumentation nach.
This printed page brought to you by AlphaSierraPapa
Fernöstliche Formulare / Unicode die Zweite
http:/www.aspheute.com/artikel/20001010.htm
Session Variablen - Verwendung und Stolpersteine
http:/www.aspheute.com/artikel/20000505.htm
Strukturierter Aufbau in der ASP-Programmierung
http:/www.aspheute.com/artikel/20011112.htm
Zahl, Datum und Währung korrekt formatiert ausgeben
http:/www.aspheute.com/artikel/20020704.htm
Zwischenspeichern von ASP Seiten
http:/www.aspheute.com/artikel/20000517.htm
©2000-2006 AspHeute.com
Alle Rechte vorbehalten. Der Inhalt dieser Seiten ist urheberrechtlich geschützt.
Eine Übernahme von Texten (auch nur auszugsweise) oder Graphiken bedarf unserer schriftlichen Zustimmung.