ASP.NET 專案中每種檔案類型都有特定用途、慣用存放目錄與處理方式。本文整理 40+ 種檔案類型完整對照表,方便開發、部署、除錯時快速查閱。
核心網頁與處理檔
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .aspx | Web Form 頁面 | 根目錄/子目錄 | 主要網頁,包含標記與伺服器控制項 |
| .ascx | 使用者控制項 | 根目錄/子目錄 | 可重複使用的 UI 片段,類似部分視圖 |
| .master | 母版頁 | 根目錄/子目錄 | 定義網站共同版面配置 |
| .ashx | 一般處理常式 | 根目錄/子目錄 | 實作 IHttpHandler,處理 AJAX、檔案下載、圖片輸出等輕量端點 |
| .asmx | XML Web Service | 根目錄/子目錄 | 傳統 ASMX Web Service (SOAP),新專案建議用 Web API |
| .svc | WCF Service | 根目錄/子目錄 | WCF 服務端點 |
設定與資源檔
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .config | 設定檔 | 根目錄/子目錄 | Web.config、機器層 Machine.config,XML 格式設定 |
| .resx | 資源檔 | App_GlobalResources / App_LocalResources | 多語系字串、圖片等資源,編譯為強型別類別 |
| .resources | 編譯後資源 | 同上 | .resx 編譯產出的二進位資源 |
| .browser | 瀏覽器定義 | App_Browsers | 識別客戶端瀏覽器能力,支援控制項自適應渲染 |
程式碼與編譯產出
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .cs / .vb | 原始碼 | App_Code / 頁面同目錄 | App_Code 會自動編譯;頁面代碼隱藏檔不在此 |
| .dll | 組件 | Bin | 預編譯類別庫、WAP 專案建置產出 |
| .compile | 預編譯 Stub | Bin | 預編譯網站時,指向實際組件的指標檔 |
| .csproj / .vbproj | 專案檔 | VS 專案目錄 | MSBuild 專案定義,僅開發環境使用 |
| .sln | 方案檔 | VS 方案目錄 | 方案層級組態,僅開發環境使用 |
資料與儲存
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .mdf | SQL Server 資料庫 | App_Data | 本地附加資料庫檔案 (Express/LocalDB) |
| .ldf | 交易記錄 | App_Data | .mdf 對應的記錄檔 |
| .mdb / .accdb | Access 資料庫 | App_Data | Access 資料庫檔案 |
| .xml | XML 資料 | App_Data / 任意 | 小型資料儲存、設定匯出入 |
主題與外觀
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .skin | 外觀檔 | App_Themes/ThemeName | 定義控制項預設屬性 (SkinID) |
| .css | 樣式表 | Content / Styles / 任意 | CSS 樣式,非 ASP.NET 專有 |
站點導航與發現
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .sitemap | 站點地圖 | 根目錄 | XmlSiteMapProvider 使用,定義導航結構 |
| .disco / .vsdisco | Web Service 發現 | App_WebReferences | 舊版 ASMX 服務發現機制 |
除錯與追蹤
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .axd | 追蹤/資源處理常式 | 根目錄 (虛擬路徑) | Trace.axd、WebResource.axd、ScriptResource.axd 等內建處理常式 |
| .cd | 類別圖 | 任意 | Visual Studio 類別圖設計器檔案 |
授權與其他
| 副檔名 | 名稱 | 存放位置 | 用途說明 |
| .licx | 授權資訊 | 專案目錄 | 元件授權嵌入資訊,建置時由 LC.exe 處理 |
| .webinfo | Web 部署資訊 | 專案目錄 | 舊版 VS 部署專案資訊 |
| .rem | 遠端處理 | 任意 | .NET Remoting 設定檔 |
| .soap | SOAP 擴展 | 任意 | 自訂 SOAP 擴展設定 |
| .sdm / .sdmDocument | 系統定義模型 | 任意 | SDM 架構模型檔案 |
| .dsdgm / .dsprototype | 分散式服務圖 | 任意 | 服務互動結構視覺化 |
特殊目錄結構速查
專案根目錄/
├── App_Code/ # 共享類別原始碼 (自動編譯)
├── App_Data/ # 資料庫檔、XML、本地資料 (IIS 唯讀)
├── App_GlobalResources/# 全域資源 .resx
├── App_LocalResources/ # 頁面專用資源 .resx
├── App_Themes/ # 佈景主題 .skin .css
├── App_Browsers/ # 瀏覽器定義 .browser
├── App_WebReferences/ # Web Service 參考 .disco .wsdl
├── Bin/ # 編譯後 .dll .compile
├── Content/ # 靜態資源 (CSS, 圖片, JS) - 慣例
├── Scripts/ # JavaScript 檔案 - 慣例
└── *.aspx, *.ascx, *.master, *.ashx, *.asmx, *.config, *.sitemap
部署時機注意事項
- App_Code:網站專案需部署原始碼;WAP 專案已編譯進 DLL,不需部署。
- Bin:必須部署所有 .dll 與 .compile。
- .config:生產環境請移除 `debug="true"`、調整連線字串、關閉詳細錯誤頁面。
- .pdb:偵錯符號檔,正式環境建議不部署。