版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十章 模块和处理程序 回顾 用户控件的作用是什么? 用户控件和Web窗体有什么区别? 在用户控件中使用事件的步骤是什么? 如何动态加载用户控件? 本章目标 了解模块和处理程序 掌握模块的制作和使用 熟练掌握处理程序的制作和使用 HttpModule和HttpHandler HttpHandler 处理程序处理程序 Http运行时运行时 Http模块模块 Http模块模块 Http模块模块 Http请求请求 响应响应 请求的终点请求的终点 最终的处理最终的处理 可能经历多个模块,可能经历多个模块, 层次层次“过滤过滤” 原路返回原路返回 IIS6.0 IIS7.0 HttpModule pub
2、lic class MyModule : IHttpModule public void Dispose() /此处放置清除代码。 public void Init(HttpApplication context) / 下面是如何处理 LogRequest 事件并为其 / 提供自定义日志记录实现的示例 访问当前的 HttpApplication环境 HttpApplication事件 事件说明 AcquireRequestState准备获得当前HTTP请求的会话状态时触发 AuthenticateRequest准备验证用户身份时触发 AuthorizeRequest准备给用户授予资源的访问权限
3、时触发 BeginRequestBeginRequest收到一个新的收到一个新的HTTPHTTP请求时触发请求时触发 Disposed完成HTTP请求时触发 EndRequestEndRequest在把响应内容发送给客户端之前触发在把响应内容发送给客户端之前触发 Error在处理HTTP请求时发生未处理的异常时触发 PostRequestHandlerExecute在HTTP处理程序执行完毕后触发 PreRequestHandlerExecute 在开始执行HTTP请求的处理程序之前触发。在这个事件之后, ASP.NET会把请求发送给合适的HTTP处理程序 PreSendRequestCont
4、ent 在把响应内容发送给客户端之前触发。这个事件可以修改响应内容, 之后把它发送给客户端。可以使用这个事件给页面输出添加所有页 面中都有的公共内容。 PreSendRequestHeaders 在把HTTP响应报头发送给客户端之前触发。这个事件可以修改报头, 之后把它发送给客户端。可以使用这个事件给报头添加cookie金额 定制数据 自定义HttpModule 自定义HttpModule 编写自定义HttpModule类 配置应用程序 public class MyModule : IHttpModule private HttpApplication app = null; public
5、void Init(HttpApplication context) app = context; app.EndRequest +=new EventHandler(app_EndRequest); protected void app_EndRequest(object sender, EventArgs e) app.Context.Response.Write(信息来自MyModule,时间: + DateTime.Now.ToLongDateString() + : + DateTime.Now.ToLongTimeString(); HttpHandler 位于请求处理管道的末尾
6、是整个请求处理的终点 通常使用标准的ASP.NET页面提供的内容以减少系 统开销 典型的应用就是根据动态查询字符串的数据来处理 图像 一般处理程序 public class MyHandler : IHttpHandler public void ProcessRequest(HttpContext context) context.Response.ContentType = text/plain; context.Response.Write(Hello World); public bool IsReusable get return false; 继承IHttpHandler接口 实现
7、ProcessRequest方法 实现IsReusable属性 修改修改ContentType报头的值报头的值 可以通过可以通过HttpHandler返回不同类型的响应结果返回不同类型的响应结果 指定Handler方法 思路分析 获得URL传的参数并查找相对应的封面图片 将水印“粘贴”在封面图片的左上角 修改程序的输出类型,并将组合出的新图片输出 修改页面中访问该图片的路径。 string path = context.Server.MapPath(Image + context.Request.Paramsid + .jpg); Image img = Image.FromFile(path
8、); Graphics g = Graphics.FromImage(img); SolidBrush brush = new SolidBrush(Color.Blue); g.DrawString(南方影视网, new Font(宋体, 12f), brush, 30, 30); context.Response.ContentType = image/jpeg; img.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpe g); context.Response.End(); a href= target=_blank 总结 了
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CI 441-2024数控机床可靠性测试方法
- 光缆敷设工程投标文件
- 统编版小学道德与法治五年级上册活动方案
- 工厂现场5S推行管理手册
- 220kV升压站绝缘监督实施方案
- 动火作业风险管控操作手册
- 第五章 实验活动5 不同价态含硫物质的转化教学设计-初一化学
- 初中语文七年级《大雁归来》教学设计
- 高中体育游戏化教学设计与实践教案
- 小学四年级综合实践活动《手语里的温情与力量》教学设计
- 2025年全国成人高考(专升本)《政治》真题及答案(完整版)
- 2026秋新教材外研版(三起)小学英语六年级上册(全册)各单元达标测试卷及答案
- 市政工程安全隐患整改闭环管理培训
- 装配式叠合板安装监理实施细则
- 2026年北京市通州区辅警协警招聘考试备考试题及答案详解
- 七上科学经纬度专题
- 老年骨质疏松症患者跌倒预防循证指南(2026版)
- 2026年广西高职单招职业技能测试真题及参考答案
- 【2026】超星尔雅学习通《大学生恋爱与性健康(中国性学会)》章节测试及答案
- 2025年江西省人才发展集团有限公司招聘专题笔试真题
- pkp手术的护理与配合
评论
0/150
提交评论