ASP.NET MVC - 生命周期



在本章中,我们将讨论整个 MVC 管道以及 HTTP 请求在 ASP.NET 中遍历 MVC 框架时的生命周期。从高层次来看,生命周期只是一系列用于处理某种类型的请求或更改应用程序状态的步骤或事件。您可能已经熟悉各种框架生命周期,这个概念并非 MVC 独有。

例如,ASP.NET Web 窗体平台具有复杂的页面生命周期。其他 .NET 平台(如 Windows Phone 应用)也有自己的应用程序生命周期。无论使用何种技术,所有这些平台的一个共同点是,了解处理管道可以帮助您更好地利用可用的功能,MVC 也不例外。

MVC 有两个生命周期 -

  • 应用程序生命周期
  • 请求生命周期
MVC Life Cycles

应用程序生命周期

应用程序生命周期是指应用程序进程实际开始在 IIS 中运行的时间到它停止的时间。这由应用程序启动文件中的应用程序启动和结束事件标记。

请求生命周期

它是每次我们的应用程序处理 HTTP 请求时发生的一系列事件。

每个 MVC 应用程序的入口点都以路由开始。ASP.NET 平台接收请求后,通过 URL 路由模块确定如何处理该请求。

模块是可以挂接到应用程序生命周期并添加功能的 .NET 组件。路由模块负责将传入的 URL 与我们在应用程序中定义的路由匹配。

所有路由都与一个关联的路由处理程序相关联,这是 MVC 框架的入口点。

Route Handler

MVC 框架处理将路由数据转换为可以处理请求的具体控制器。创建控制器后,下一步是**操作执行**。一个名为**操作调用器**的组件查找并选择一个适当的操作方法来调用控制器。

准备操作结果后,将触发下一阶段,即**结果执行**。MVC 将声明结果与执行结果分开。如果结果是视图类型,则将调用视图引擎,它负责查找和呈现我们的视图。

如果结果不是视图,则操作结果将自行执行。此结果执行会生成对原始 HTTP 请求的实际响应。

广告