ASP.NET Web Pages - Φακέλος

Αυτό το κεφάλαιο παρουσιάζει τους φακέλους και τις διαδρομές φακέλων.

Σε αυτό το κεφάλαιο, θα μάθετε:

  • Λογική και φυσική δομή φακέλων
  • Εικονικά και φυσικά ονόματα
  • Web URL και διαδρομές

Λογική δομή φακέλων

Ακολουθεί η τυπική δομή φακέλων ASP.NET ιστοσελίδων:

Δομή φακέλων Web Pages
  • Ο φάκελος "Account" περιέχει αρχεία εισόδου και ασφαλείας
  • Ο φάκελος "App_Data" περιέχει βάσεις δεδομένων και αρχεία δεδομένων
  • Ο φάκελος "Images" περιέχει εικόνες
  • Ο φάκελος "Scripts" περιέχει σενάρια περιηγητή
  • Ο φάκελος "Shared" περιέχει κοινά αρχεία (π.χ. αρχεία στυλ και μοτίβα)

Φυσική δομή αρχείων

Η φυσική δομή του φακέλου "Images" του ιστότοπου είναι παρόμοια με αυτή στον υπολογιστή:

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

Εικονικά και φυσικά ονόματα

Βασισμένο στις παραπάνω παραδείγματα:

Η εικονική ονομασία της εικόνας του web είναι παρόμοια με αυτή: "Images/pic31.jpg".

Αλλά το φυσικό όνομα είναι παρόμοιο με αυτό: "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg".

URL και διαδρομές

Ο URL χρησιμοποιείται για την πρόσβαση σε αρχεία από το web:

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

Το αρχείο που αντιστοιχεί στον URL στο διακομιστή είναι:

C:\MyWebSites\htm5\html5_intro.asp

Η εικονική διαδρομή είναι μια συντομευμένη μορφή της φυσικής διαδρομής. Αν χρησιμοποιήσετε την εικονική διαδρομή, μπορείτε να μετακινήσετε τις σελίδες σε διαφορετικό όνομα τομέα (ή διακομιστή) χωρίς να ενημερώσετε τη διαδρομή.

URL	http://www.codew3c.com/html/html5_intro.asp
Όνομα διακομιστή	codew3c
Εικονική διαδρομή	/html/html5_intro.asp
Φυσική διαδρομή	C:\MyWebSites\codew3c\/html/html5_intro.asp

Ο ρίζα του δίσκου ορίζεται ως: C:\, αλλά ο ρίζα του ιστότοπου είναι / (κοσμητικό).

Η εικονική διαδρομή του φακέλου web δεν θα είναι ποτέ ίδια με τον φυσικό φάκελο.

Στον κώδικα σας, ανάλογα με το περιεχόμενο του κώδικα, μπορεί να αναφέρετε ταυτόχρονα φυσικές διαδρομές και εικονικές διαδρομές.

Το ASP.NET παρέχει τρία εργαλεία για τη διαχείριση διαδρομών φακέλων: τον τελεστικό ~, τη μέθοδο Server.MapPath και τη μέθοδο Href.

Τελεστικό ~

Για να καθορίσετε το διαδρομικό φάκελο κατά την προγραμματιστική κώδικα, χρησιμοποιήστε τον τελεστικό ~.

Εάν χρησιμοποιήσετε τον τελεστικό ~ αντί για το δρομολόγιο, μπορείτε να μετακινήσετε τον ιστότοπο σε διαφορετικό φάκελο ή τοποθεσία χωρίς να αλλάξετε καμία κώδικα:

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

Μέθοδος Server.MapPath

Η μέθοδος Server.MapPath μετατρέπει τη βιβλιοθήκη διαδρομών (/default.cshtml) σε φυσική διαδρομή που μπορεί να κατανοηθεί από τον διακομιστή (C:\Johnny\MyWebSited\Demo\default.cshtml).

Θα χρησιμοποιήσετε αυτή τη μέθοδο όταν χρειάζεται να ανοίξετε αρχεία δεδομένων που βρίσκονται στον διακομιστή (τα αρχεία δεδομένων μπορούν να προσέγγιστούν μόνο μέσω της πλήρους φυσικής διαδρομής):

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

Στο επόμενο κεφάλαιο αυτού του教程, θα μάθετε περισσότερα για την ανάγνωση και την εγγραφή δεδομένων αρχείων στο διακομιστή.

Μέθοδος Href

Η μέθοδος Href μετατρέπει τις διαδρομές του κώδικα σε διαδρομές που μπορούν να κατανοηθούν από τον περιηγητή (ο περιηγητής δεν μπορεί να κατανοήσει τον τελεστή ~).

Χρησιμοποιείτε τη μέθοδο Href για να δημιουργήσετε διαδρομές προς πόρους (π.χ. εικόνες και αρχεία CSS).

Θα χρησιμοποιείτε συχνά αυτή τη μέθοδο στις στοιχεία HTML <a>、<img> και <link>:

@{var myStyleSheet = "~/Shared/Site.css";}
<!-- Δημιουργία σύνδεσης προς το αρχείο CSS -->
<link rel="stylesheet" type="text/css" href="@Href(myStyleSheet)" />
<!-- Όπως παραπάνω : -->
<link rel="stylesheet" type="text/css" href="/Shared/Site.css" />

Η μέθοδος Href ανήκει στους τρόπους του αντικειμένου WebPage.