ASP.NET Web Pages - Verzeichnis

Dieses Kapitel stellt Verzeichnisse und Verzeichnispfade vor.

In diesem Kapitel werden Sie lernen:

  • Logische und physische Verzeichnisstruktur
  • Virtuelle und physische Namen
  • Web-URL und Pfad

Logische Verzeichnisstruktur

Hier ist die typische Verzeichnisstruktur einer ASP.NET-Webseite:

Web Pages Verzeichnisstruktur
  • Das "Account"-Verzeichnis enthält Login- und Sicherheitsdateien
  • Das "App_Data"-Verzeichnis enthält Datenbank- und Datenfiles
  • Das "Images"-Verzeichnis enthält Bilder
  • Das "Scripts"-Verzeichnis enthält Browser-Skripte
  • Das "Shared"-Verzeichnis enthält allgemeine Dateien (z.B. Layout- und Stilelemente)

Physische Dateistruktur

Die physische Struktur des "Images"-Verzeichnisses dieser Website auf dem Computer ähnelt so etwas wie:

C:\Johnny\Documents\MyWebSites\Demo\Images

Virtuelle und physische Namen

Nach dem obigen Beispiel:

Der virtuelle Name von Web-Bildern ähnelt so etwas wie: "Images/pic31.jpg".

Aber der physische Name ähnelt so etwas wie "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg".

URL und Pfad

Die URL wird verwendet, um Dateien auf dem Web zu erreichen:

http://www.codew3c.com/html5/html5_intro.asp

Das auf dem Server correspondinge Datei der URL ist:

C:\MyWebSites\htm5\html5_intro.asp

Der virtuelle Pfad ist eine Abkürzung für den physischen Pfad. Wenn Sie virtuelle Pfade verwenden, können Sie Webseiten ohne Aktualisierung der Pfade in verschiedene Domänen (oder Server) verschieben.

URL	http://www.codew3c.com/html/html5_intro.asp
Servername	codew3c
Virtueller Pfad	/html/html5_intro.asp
Physischer Pfad	C:\MyWebSites\codew3c\/html/html5_intro.asp

Das Wurzelverzeichnis auf der Festplatte wird geschrieben: C:\, aber das Wurzelverzeichnis auf der Website ist / (Schrägstrich).

Der virtuelle Pfad des web-Verzeichnisses ist niemals mit dem physischen Verzeichnis identisch (fast nie).

In Ihrem Code können Sie je nach Inhalt gleichzeitig physische und virtuelle Pfade verwenden.

ASP.NET bietet drei Werkzeuge zur Verarbeitung von Verzeichnispfaden an: den ~-Operator, die Methode Server.MapPath und die Methode Href.

Der ~-Operator

Verwenden Sie den ~-Operator, um den virtuellen Stammverzeichnis im Quellcode zu definieren.

Wenn Sie den ~-Operator anstelle des Pfades verwenden, können Sie die Website ohne Änderungen am Code in einen anderen Ordner oder eine andere Position verschieben:

var myImagesFolder = "~/images";
var myStyleSheet = "~/styles/StyleSheet.css";

Server.MapPath-Methode

Die Server.MapPath-Methode convertschielt den virtuellen Pfad (/default.cshtml) in einen physischen Pfad, den der Server versteht (C:\Johnny\MyWebSited\Demo\default.cshtml).

Sie verwenden diese Methode, wenn Sie Daten Dateien auf dem Server öffnen müssen (Daten Dateien können nur über den vollständigen physischen Pfad erreicht werden):

var pathName = "~/dataFile.txt";
var fileName = Server.MapPath(pathName);

Im nächsten Kapitel dieses Tutorials werden Sie mehr über das Lesen und Schreiben von Daten Dateien auf dem Server lernen.

Href-Methode

Die Href-Methode convertschielt Pfade im Code in Pfade, die der Browser verstehen kann (der Browser versteht den ~-Operator nicht).

Sie verwenden die Href-Methode, um Pfade zu Ressourcen (z.B. Bilder und CSS-Dateien) zu erstellen.

Sie werden häufig in HTML <a>、<img> und <link>-Elementen diese Methode verwenden:

@{var myStyleSheet = "~/Shared/Site.css";}
<!-- Erstellen Sie einen Link zum CSS-Datei -->
<link rel="stylesheet" type="text/css" href="@Href(myStyleSheet)" />
<!-- Gleiches wie oben : -->
<link rel="stylesheet" type="text/css" href="/Shared/Site.css" />

Die Href-Methode gehört zu den Methoden des WebPage-Objekts.