简述ASP.NET页面与WEB服务器的交互过程

简述ASP.NET页面与WEB服务器的交互过程高手请指教!谢谢!
2024-11-08 03:33:50
推荐回答(3个)
回答1:

用户请求页面。(使用 HTTP GET 方法请求页面。)页面第一次运行,执行初步处理(如果您已通过编程让它执行初步处理)。

页面将标记动态呈现到浏览器,用户看到的网页类似于其他任何网页。

用户键入信息或从可用选项中进行选择,然后单击按钮。(如果用户单击链接而不是按钮,页面可能仅仅定位到另一页,而第一页不会被进一步处理。)

页面发送到 Web 服务器。(浏览器执行 HTTP POST 方法,该方法在 ASP.NET 中称为“回发”。)更明确地说,页面发送回其自身。例如,如果用户正在使用 Default.aspx 页面,则单击该页上的某个按钮可以将该页发送回服务器,发送的目标则是 Default.aspx。

在 Web 服务器上,该页再次运行。并且可在页上使用用户键入或选择的信息。

页面执行您通过编程所要实行的操作。

页面将其自身呈现回浏览器。

与桌面应用程序中的窗体不同,ASP.NET 网页在用户使用窗体时不会启动或运行,并且仅当用户单击“关闭”按钮时才会卸载。这是由于 Web 具有断开连接的天性。浏览器从 Web 服务器请求页面时,浏览器和服务器相连的时间仅够处理请求。Web 服务器将页面呈现到浏览器之后,连接即终止。如果浏览器对同一 Web 服务器发出另一个请求,则即使是对同一个页面发出的,该请求仍会作为新请求来处理。

Web 这种断开连接的天性决定了 ASP.NET 页的运行方式。用户请求 ASP.NET 网页时,将创建该页的新实例。该页执行其处理,将标记呈现到浏览器,然后该页被丢弃。如果用户单击按钮以执行回发,将创建该页的新实例;该页执行其处理,然后再次被丢弃。这样,每个回发和往返行程都会导致生成该页的一个新实例。

回答2:

asp.net依靠公共语言库,类库,和虚拟机CLR;
CLR调用语言库,比如C#,如果需要调用类库里的各个类,那就需要引用类库;
而公共语言库也运行于类库。
你依这样画个图吧。

回答3:

Asp.Net和服务器的交互过程
页面流程: OnInit(页面初始化) -> OnLoad(页面装载) -> OnRender(页面数据呈现) -> OnUnLoad(页面卸载)