ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# ASP.NET Web Pages - 全局页面 本章介绍全局页面 AppStart 和 PageStart。 ## 在 Web 启动之前:\_AppStart 大多数的服务器端代码是写在个人网页里边。例如,如果网页中包含输入表单,那么这个网页通常包含用来读取表单数据的服务器端代码。 然而,您可以通过在您的站点根目录下创建一个名为 \_AppStart 的页面,这样在站点启动之前可以先启动代码执行。如果存在此页面,ASP.NET 会在站点中其它页面被请求时,优先运行这个页面。 \_AppStart 的典型用途是启动代码和初始化全局数值(比如计数器和全局名称)。 **注释 1:**\_AppStart 的文件扩展名与您的网页一致,比如:\_AppStart.cshtml。 **注释 2:**\_AppStart 有下划线前缀。因此,这些文件不可以直接浏览。 ## 在每一个页面之前:\_PageStart 就像 \_AppStart 在您的站点启动之前就运行一样,您可以编写在每个文件夹中的任何页面之前运行的代码。 对于您网站中的每个文件夹,您可以添加一个名为 \_PageStart 的文件。 \_PageStart 的典型用途是为一个文件夹中的所有页面设置布局页面,或者在运行某个页面之前检查用户是否已经登录。 ## 它是如何工作的? 下图显示了它是如何工作的: ![PageStart](https://box.kancloud.cn/2015-12-13_566d2e2c667cd.jpg) 当接收到一个请求时,ASP.NET 会首先检查 \_AppStart 是否存在。 如果 \_AppStart 存在且这是站点接收到的第一个请求,则运行 \_AppStart。 然后 ASP.NET 检查 \_PageStart 是否存在。如果 \_PageStart 存在,则在其它被请求的页面运行之前先运行 \_PageStart。 您可以在 \_PageStart 中调用 RunPage() 来指定被请求页面的运行位置。否则,默认情况下,被请求页面是在 \_PageStart 运行之后才被运行。