ASP.NET Web Pages - Folder
- Poprzednia strona Layout WebPages
- Następna strona Globalne WebPages
Ten rozdział wprowadza folder i ścieżki folderów.
W tym rozdziale nauczysz się:
- Struktura folderów logicznych i fizycznych
- Wirtualne i fizyczne nazwy
- Web URL i ścieżka
Struktura folderów logicznych
Poniżej znajduje się typowa struktura folderów strony ASP.NET:

- Folder "Account" zawiera pliki logowania i bezpieczeństwa
- Folder "App_Data" zawiera bazy danych i pliki danych
- Folder "Images" zawiera obrazy
- Folder "Scripts" zawiera skrypty przeglądarki
- Folder "Shared" zawiera ogólne pliki (np. pliki layout i style)
Struktura plików fizycznych
Fizyczna struktura folderu "Images" na tej stronie internetowej na komputerze wygląda podobnie do tego:
C:\Johnny\Documents\MyWebSites\Demo\Images
Wirtualne i fizyczne nazwy
Na podstawie powyższego przykładu:
Wirtualne nazwy obrazów są podobne do: "Images/pic31.jpg".
Ale fizyczne nazwy są podobne do "C:\Johnny\Documents\MyWebSites\Demo\Images\pic31.jpg".
URL i ścieżka
URL jest używany do dostępu do plików z web:
http://www.codew3c.com/html5/html5_intro.asp
Plik, do którego odnosi się URL na serwerze, to:
C:\MyWebSites\htm5\html5_intro.asp
Wirtualna ścieżka to skrócona forma reprezentująca ścieżkę fizyczną. Jeśli używasz ścieżki wirtualnej, możesz przenieść stronę internetową do innego domeny (lub serwera) bez aktualizacji ścieżki.
URL http://www.codew3c.com/html/html5_intro.asp Nazwa serwera codew3c Ścieżka wirtualna /html/html5_intro.asp Ścieżka fizyczna C:\MyWebSites\codew3c\/html/html5_intro.asp
Katalog główny na dysku twardym jest zapisywany jako: C:\, ale katalog główny na stronie internetowej to / (ukośnik).
Wirtualna ścieżka folderu web nigdy (prawie) nie jest taka sama jak folder fizyczny.
W Twoim kodzie, w zależności od treści kodu, możesz jednocześnie odnosić się do ścieżki fizycznej i wirtualnej.
ASP.NET oferuje trzy narzędzia do obsługi ścieżek folderów: operator ~, metodę Server.MapPath oraz metodę Href.
Operator ~
Aby określić w kodzie programowym wirtualny katalog główny, użyj operatora ~.
Jeśli używasz operatora ~ zamiast ścieżki, możesz przenieść stronę internetową do innego folderu lub miejsca bez zmiany żadnego kodu:
var myImagesFolder = "~/images"; var myStyleSheet = "~/styles/StyleSheet.css";
Metoda Server.MapPath
Metoda Server.MapPath konwertuje wirtualną ścieżkę (/default.cshtml) na fizyczną ścieżkę rozumianą przez serwer (C:\Johnny\MyWebSited\Demo\default.cshtml).
Używasz tej metody, gdy musisz otworzyć plik danych znajdujący się na serwerze (pliki danych można uzyskać tylko przez pełną fizyczną ścieżkę):
var pathName = "~/dataFile.txt"; var fileName = Server.MapPath(pathName);
W następnym rozdziale tego kursu nauczysz się więcej o odczytywaniu i zapisywaniu plików danych na serwerze.
Metoda Href
Metoda Href konwertuje ścieżki w kodzie na ścieżki rozumiane przez przeglądarkę (przeglądarka nie rozumie operatora ~).
Używasz metody Href do tworzenia ścieżek do zasobów (np. obrazów i plików CSS).
Często używasz tej metody w elementach HTML <a>、<img> oraz <link>:
@{var myStyleSheet = "~/Shared/Site.css";} <!-- Tworzenie linku do pliku CSS --> <link rel="stylesheet" type="text/css" href="@Href(myStyleSheet)" /> <!-- Tak samo : --> <link rel="stylesheet" type="text/css" href="/Shared/Site.css" />
Metoda Href należy do metod obiektu WebPage.
- Poprzednia strona Layout WebPages
- Następna strona Globalne WebPages