我想知道使用razor语法的ASP.NET网页的生命周期。
从有关Stack Overflow的ASP.NET MVC控制器生命周期的问题,答案表明其解释如下 http://msdn.microsoft.com/en-us/magazine/dd695917.aspx。所以我不是在问同样的问题。
对于纯ASP.NET网页项目(而不是MVC),我想知道浏览器请求.CSHTML文件时发生的事件序列。
答案 0 :(得分:2)
在Web页面项目中,当向应用程序发出第一个请求时,将从Razor文件生成继承自System.Web.WebPages.WebPage
的C#类。该类有一个方法:Execute,它包含服务器端代码和一些输出HTML的WriteLiteral调用。每个类都以原始.cshtml文件命名,例如Default.cshtml
变为
public class _Page_Default_cshtml : WebPage
这些类被编译为dll。请求被路由到适当的类。
网页不是像Web窗体那样的事件驱动开发模型,所以没有特定的事件可以像PreRender或Page_Load等那样挂钩。