📘 第4章:ASP.NET Web Pages – 文件夹(Folders)
📂 网站常见文件夹结构
一个典型的 ASP.NET Web Pages 网站项目,推荐采用如下的文件夹组织方式:
/Site
|_ /Pages # 所有 .cshtml 页面
|_ /App_Data # 数据库文件(如 .sdf)
|_ /Scripts # JavaScript 文件
|_ /Styles # CSS 样式表
|_ /Images # 图像资源
|_ /Helpers # 可复用的代码(如 Razor Helpers)
|_ /Shared # 布局、页眉页脚、导航等共享部分
🗂️ 各文件夹作用详解
✅ /Pages
(主页面)
- 所有可访问的
.cshtml
页面文件应放在此目录或其子目录下。 - 支持子文件夹结构,如
/Pages/Admin/Index.cshtml
。
✅ /App_Data
- 用于存放数据库文件,如 SQL Server
.sdf
文件。 - 示例:
/App_Data/MyDatabase.sdf
- ASP.NET 不允许用户通过浏览器直接访问此目录中的文件,适合存放敏感数据。
✅ /Scripts
- 放置 JavaScript 文件,通常包括:
/Scripts/jquery-3.7.0.min.js
/Scripts/custom.js
- 页面中引用方式:
<script src="/Scripts/jquery-3.7.0.min.js"></script>
✅ /Styles
- 存放 CSS 文件:
/Styles/site.css
- 页面中引用方式:
<link rel="stylesheet" href="/Styles/site.css" />
✅ /Images
- 存放网站用到的图像资源:
/Images/logo.png
- 页面中使用:
<img src="/Images/logo.png" alt="Site Logo" />
✅ /Helpers
- 存放自定义的辅助方法文件,如 Razor helper:
@helper FormatPrice(decimal price) {
<span class="price">@price.ToString("C")</span>
}
✅ /Shared
- 存放共享布局与 UI 片段,如:
/Shared/_Layout.cshtml
/Shared/_Header.cshtml
/Shared/_Footer.cshtml
- 使用方式(在页面中包含):
@RenderPage("~/Shared/_Header.cshtml")
📁 文件夹访问限制说明
ASP.NET Web Pages 默认将以下文件夹设为不可直接通过 URL 访问:
/App_Data
/bin
/App_Start
这有助于防止用户访问敏感数据或应用程序内部资源。
🛠 文件夹命名建议
- 使用小写或驼峰式命名,避免特殊字符和空格
- 避免使用保留关键字(如 “con”、“nul” 等)
🌐 出站链接推荐
📚 参考资料
- Microsoft Learn – Web Pages 文件结构
- Stack Overflow – 关于文件组织的讨论:asp.net-webpages + folder-structure
- 《ASP.NET Web Pages in Action》一书相关章节
发表回复