ASP.NET 网页 - 全局页面
本章介绍全局页面 AppStart 和 PageStart。
网站启动前:_AppStart
大多数服务器端代码都写在各个网页内部。例如,如果一个网页包含一个输入表单,则该网页通常包含用于读取数据的服务器端代码。
但是,通过在网站根目录下创建一个名为 _AppStart 的页面,您可以在网站启动前执行启动代码。如果此页面存在,则 ASP.NET 在第一次请求网站中的任何页面时都会运行它。
_AppStart 的典型用途是启动代码和初始化全局值,例如计数器和全局名称。
注意 1:_AppStart 应与您的网页具有相同的扩展名,例如:_AppStart.cshtml。
注意 2:_AppStart 具有下划线前缀。因此,无法直接浏览这些文件。
每个页面之前:_PageStart
就像 _AppStart 在网站启动前运行一样,您也可以编写在每个文件夹中的任何页面之前运行的代码。
对于您的 Web 中的每个文件夹,您都可以添加一个名为 _PageStart 的文件。
_PageStart 的典型用途是为文件夹中的所有页面设置布局页面,或在运行页面之前检查用户是否已登录。
它是如何工作的?
下图显示了它是如何工作的
当请求进来时,ASP.NET 检查 _AppStart 是否存在。如果存在,并且这是对网站的第一次请求,则 _AppStart 运行。
然后 ASP.NET 检查 _PageStart 是否存在。如果存在,则在请求的页面之前运行 _PageStart。
如果您在 _PageStart 中包含对 RunPage() 的调用,则指定您希望请求的页面在何处运行。如果没有,则 _PageStart 会在请求的页面之前运行。