*摘要
。ASP.NET页面简介
。页面生存周期
。页面事件
。页面指令
。内联编程型与代码隐藏编程模型

*ASP.NET页面
。ASP.NET页框架是一种编程框架,它在Web服务器上运行动态地生成和管理Web窗体页。可以使用Web窗体页来创建可编程的Web页,这些

Web页用作Web应用程序的用户界面。
。Web窗体页在任何浏览器或客户端设备中向用户提供信息,并使用服务器端代码来实现应用程序逻辑。
。Web窗体页输出几乎可以包含任何支持HTTP的语言(包括HTML,XML,WML和ECMAScript(JScript,JavaScript))

Web窗体页的特点
。基于Microsoft ASP.NET技术。在该技术中,在服务器上运行的代码动态地生成到浏览器或客户端设备的Web页输出。
。兼容所有浏览器或移动设备。Web窗体页自动为样式,布局等功能呈现正确的,符合浏览器的HTML。
。兼容.NET公共语言运行库所支持的任何语言
。基于Microsoft.NET框架生成
。在Visual Studio中通过强大的快速应用程序开发(RAD)工具受到支持
。具有灵活性,因为您可以向它们添加用户创建的控件和第三方控件。

*单文件Web窗体页
。除了由.aspx文件和单独的类文件组成的页之外,ASP.NET结构还支持“单文件”模型,在此模型中,UI元素和代码位于同一文件中。
。单文件页的处理文件存一些不同之处:
-不会将该页的代码编译成一个单独的类,然后从该类派生.aspx文件。相反,.aspx文件将直接从Page类派生。
-当部署该页时,由于源代码在物理上位于.aspx文件中,所有源代码将与Web窗体页一起部署。

*Web页面处理过程
。页面的一次往返处理:用户对Server Control的一次操作,就可能引起页面的一次往返处理:页面被提交到服务器端,执行响应的事件

处理代码,重建页面,然后返回到客户端
。页面重建:每一次页面被请求,或者页面事件被提交到服务器,asp.net运行环境将执行必要的代码,重建整个页面,把结果页面送到

浏览器,然后抛弃页面的变量,控件的状态和属性等等页面信息。

*页面事件
以下列表按激发顺序提供运行时连线的代理实例:
。Page_Init:初始化值或连接
。Page_Load:出现此事件期间,您可以执行一系列的操作来首次创建ASP.NET页面或响应由投递引起的客户端事件。在此事件之前,已还

原页面和控件视图状态。使用IsPostBack页面属性检查是否为首次处理该页面。如果是首次处理,请执行数据绑定。此外,请读取并更新

控件属性。
。Page_DataBind:在页面级别调用DataBind,也可在单个控件上调用DataBindPage_PreRender:恰好在保存视图状态和呈现控件之前激

发PreRender事件。
。Page_Unload:此事件是执行最终清理工作的合适位置。

*非确定性事件
。Page_Error:如果在页面处理过程中出理未处理的例外,则激发Error事件。错误事件为您提供了妥善处理错误的机会。
。Page_AbortTransaction:如果要指明交易是成功还是失败,交易事件非常有用。此事件通常用于购物车方案,其中此事件可以指示订

购是成功还是失败。如果已终止交易,则激发此事件。
。Page_CommitTransaction:如果已成功提交交易,则激发此事件。

Global.asax
Global.asax是干什么的?
。Global.asax文件也称为ASP.NET应用程序文件,它一般被放在根目录下。此文件中的代码不产生用户界面,也不相应单个页面的请求。
。它主要是负责处理Application_Start,Application_End,Session_Start,Session_End事件的。

*Application和Session事件
。当Application对象的生命周期开始时,Application_Start事件会被启动,当Application对象的生命周期结束时Application_End事件

会被启动。
。当有一个新用户访问应用程序时,就会立刻触发Session_Start事件。当某个用户停止了访问或者程序执行了Session.Abandon方法,就

会触发Session_End事件。
。一个Application_End事件肯定发生在Session_End事件之后,Application_End事件只有在服务器停止工作或Application_End事件卸载

时才触发。

Global.asax中的事件
事件函数           描述
Application_start:应用程序启动时激发
Application_BeginRequeset:HTTP请求开始时激发
Application_AuthenticateRequest:应用程序批准HTTP请求时激发
Session_Start:会话启动时激发
Application_EndRequest:HTTP请求结束时激发
Session_End:会话结束时激发
Application_End:应用程序结束时激发
Application_Error:发生错误时激发

*页面指令
。页面指令指定页面编译器在处理文件时使用的可选设置。页面指令位于页面文件的顶部,使用以下语法:
-<%@ directive{attribute=value}* %>
。ASP.NET页面支持下列指令:
-@Page
-@Implements
-@Import
-@Register
-@Assembly
-@Reference
-@OutputCache

@Import
。命名空间的导入
。示例:
-<%@ import anmespace="System.NET" %>
-导入类库
-有点相似于#include<Stdio.h>

@register
。自定义控件声明
。示例如下:
-<%@ Register TagPrefix="saidy" TagName="info" Src="con01.ascx" %>

@page
。语法形式如下:
-<%@ page language="VB" contentType="text/html" ResponseEncoding="gb2312" %>
。参数
-Language
。示例:Language="VB"
。示例:Language="C#"

@page
-Debug
。指示是否应使用调试符号编译页。如果应使用调试符号编译该页,则为true;否则为false。
。示例:debug="true"
-Buffer
。确定是否启用HTTP响应缓冲。如查启用页缓冲,则为true;否则为false。默认值为true。
。示例:buffer=true

@page
。参数
-AutoEventWireup
。指示页的事件是否自动连网。如果启用事件自动连网,则为true;否则为false。默认值为true。
-ErrorPage
。定义在出现末处理页异常时用重定向的目录URL
。ErrorPage=error.htm

*内联编程模型与代码隐藏编程模型
ASP.NET支持两种模式的页面开发:
。在.aspx文件的<script runat="server">块内写入页面逻辑代码,然后在服务器上首次请求该页面时动态编译代码。
。在外部类中写入页面逻辑代码,在服务器上进行部署之前编译该外部类,并且运行时在.aspx文件“背后”链接该类。

转载于:https://www.cnblogs.com/iceberg2008/archive/2009/04/02/1427690.html

第二十一讲 ASP.NET页面框架相关推荐

  1. 织梦仿站系列教程第二十一讲——封面页制作(四)

    织梦搜索提示关键词不少于2个字节 织梦仿站系列教程第二十一讲--封面页制作(四) 看拳击在线的代码,晕,最新新闻和热门新闻竟然是JS调用,我们只好找到这个JS文件,转换成HTML,然后修改. 将如下代 ...

  2. 工具教程第二十一讲:比特儿交易平台APP的使用(一)

    这里是王团长区块链学院,与最优秀的区块链人一起成长!今天给大家具体讲讲火币网交易平台APP如何使用. 点击观看视频教程:工具教程第二十一讲:比特儿交易平台APP的使用(一) 一.客户端下载: 登录比特 ...

  3. 【第二十一讲】参数解析器

    [第二十一讲]参数解析器 文章目录 [第二十一讲]参数解析器 1-常见参数解析器 2-组合模式在 Spring 中的体现 总结 常见参数解析器 组合模式在 Spring 中的体现 ${} #{} 小技 ...

  4. 第十九讲:爱情:如何让爱情天长地久 第二十讲:幽默 第二十一讲:爱情自尊

    (注:此为课程第十九课,更新于2017年7月16日) 大家好! 今天我们继续谈论爱情,讲之前先说一下,一位叫Nadia的同学,你的钥匙链落在这教室了,就在我这里,课后请来我这里取. 那我们来讲讲爱情吧 ...

  5. 第二十一讲 特征值和特征向量

    我个人认为麻省理工线性代数这门课,到二十一讲才真正进入有用的部分,因此从这一讲开始做笔记. 一,概念 满足条件:Ax=λx 解释:当向量x经过矩阵A变换后,效果等于向量x乘上任意常数λ 则:x是矩阵A ...

  6. 李宏毅机器学习2016 第二十一讲 隐马尔可夫模型和条件随机场

    视频链接:李宏毅机器学习(2016)_演讲•公开课_科技_bilibili_哔哩哔哩 课程资源:Hung-yi Lee 课程相关PPT已经打包命名好了:链接:https://pan.baidu.com ...

  7. 深聊全链路压测之:第二十一讲 | 如何搭建GoReplay压测平台。

    搭建GoReplay压测平台 1.引言 2.GoReplay 2.1 什么是GoReplay 2.1.1 定义 2.1.2 原理 2.2 环境安装 2.2.1 Golang安装 2.2.2 GoRep ...

  8. 第二十一讲 任务的删除

    任务删除主要完成的事情: 1.从就绪列表,延时列表等里面删除. 2.任务释放占用的资源. 任务删除的方式有两种: 1.其他任务强制删除他.2.其他任务请求一个标志位,然后这个这个任务判断这个标志位是否 ...

  9. 第二十一讲 卷积公式

    一,卷积公式: 已知:, 设: 求: 因为拉氏变换是由幂级数变过来的,所以上面的问题可以转换为下面的问题方便计算: 已知:, 设: 求:,(求解过程省略) 解得卷积公式: 文字解读:两个函数的乘积,等 ...

  10. Python实战从入门到精通第二十一讲——构建一个模块的层级包

    想将你的代码组织成由很多分层模块构成的包. 封装成包是很简单的.在文件系统上组织你的代码,并确保每个目录都定义了一个__init__.py文件. 例如: graphics/__init__.pypri ...

最新文章

  1. HDU——1106排序(istringstream的使用、STLvector练习)
  2. 人类未来将毁于元宇宙?刘慈欣向往星辰大海,小扎却要深耕Meta
  3. java 枚举使用简书_java枚举类型使用和详解
  4. 使用SQL进行递归查询
  5. Swoole Interview
  6. 心电图前波过多_【动态心电】如何阅读24小时动态心电图?
  7. kotlin学习之伴生对象(十五)
  8. 在Kubernetes中使用Sateful Set部署Redis
  9. %=%、%%、%@%、%#%的区别
  10. 本地计算机用plsql访问虚拟机中的oracle数据库
  11. 二胎上位之路:html5报表和原生报表的笑尿撕逼
  12. 光热发电成千亿元市场 加速产业布局
  13. 欢迎使用CSDN-markdown编辑器231
  14. 完整的连接器设计手册_连接器退化机理(二)—腐蚀
  15. 创意水彩中国风重阳节PPT模板
  16. Python3之正则表达式详解!
  17. 刘宇凡:新型鸡汤如何击溃传统鸡汤?
  18. android开发日记 ——avata项目
  19. Pytorch 深度学习入门与实践 第二章 pytorch快速入门 (1)
  20. 高维空间向量搜索---腾讯词向量相似检索实践

热门文章

  1. Integer在webservice的传递
  2. SecureCRT的logon action登录跳转设置
  3. 看了这个视频都想辞职了
  4. 别瞎写工具类了,Spring自带的这些他不香麽?
  5. 深入 AI 之前,你需要学习的服务与框架
  6. 构建微服务体系结构的最佳实践
  7. Azure 宕机 3 个小时:因人为配置 DNS 失误
  8. 脱口秀在尝试处理一件难事
  9. 看小龙哥演讲之感悟!
  10. 如何在原有的cookie里面添加值_【平面设计教程】如何创建一个漂亮又好吃的饼干呢?...