C#在一般处理程序中使用多线程下事物的处理处理怎么做

您所在的位置: &
6.3.1 创建一般处理程序
6.3.1 创建一般处理程序
谭振林 等译
人民邮电出版社
《ASP.NET 4揭秘.第2卷》第6章使用HTTP运行库,这一章将深入探讨ASP.NET页面处理机制的许多高级主题。接着,讨论了如何创建一个自定义的ExpressionBuilder,它负责把表达式解析为代码。还将学习如何使用HTTP处理程序。HTTP处理程序是一个.NET类,它在请求特定路径的文件时执行。最后,你将了解如何创建自定义HTTP模块。本节为大家介绍如何创建一般处理程序。
6.3 创建HTTP处理程序
HTTP处理程序是一个.NET类,它在请求某路径的文件时执行。一个ASP.NET应用程序中可以请求的每一种类型的资源都有一个相应的处理程序。例如,当请求一个ASP.NET页面时,页面类被执行。而页面类实际上是一个HTTP处理程序,因为它实现了IHttpHandler接口。
另一个HTTP处理程序的例子是TrackHandler类,用于在请求Trace.axd页面时显示应用程序级的跟踪信息;还有ForbiddenHandler类,可以在试图从浏览器请求源代码资源文件时显示一个访问禁止信息。
可以实现自己的HTTP处理程序。例如,想象一下,我们希望存储所有的图片到数据库表,并且希望使用标准的HTML &img&标签在Web页面上显示这些图片。此时,可以将所有的.gif或.jpeg文件的请求映射到一个自定义图片HTTP处理程序。请求图片时,图片HTTP处理程序可以自动从数据库中读取图片。
又或者,我们希望为网站公开一个RSS种子。此时,我们将创建一个RSS HTTP处理程序来显示网站中的博客项目和文章列表。有两种方式来创建HTTP处理程序:创建一个一般处理程序或者在一个自定义类中实现IHttpHandler接口。接下来将讨论创建HTTP处理程序的两种方法。
6.3.1 创建一般处理程序
最简单的创建新HTTP处理程序的方法是创建一般处理程序。当创建一般处理程序时,我们创建一个扩展名为.ashx的文件。请求.ashx文件时会执行一般处理程序。
可以将一般处理程序想象成一个轻量级的ASP.NET页面。一般处理程序和ASP.NET页面一样包含一个呈现内容到浏览器的方法。不能在一般处理程序中声明性 地添加控件。一般处理程序不支持诸如Load或PreRender的事件。
在这一小节,我们创建一个一般处理程序,可以根据字符串动态生成图片。例如,如果传递字符串Hello World!给处理程序,则处理程序返回该文本的图片。
这个一般处理程序包含于代码清单6-14中。
代码清单6-14 ImageTextHandler.ashx
代码清单6-14中的ImageTextHandler包含了一个方法和一个属性。ProcessRequest()方法负责输出内容到浏览器。
在代码清单6-14中,图片文本、字体和文字大小都从查询字符串中获得。通过像下面这样发出请求,可以指定想要从处理程序返回的图片:/ImageTextHandler.ashx?text=Hello&font=Arial&size=30&
接着,使用System.Drawing命名空间中的类创建一个位图。这个位图实际上会被创建两次。第一次用来估计需要生成的包含文本的位图的大小。接着创建一个拥有正确大小的位图,将文本写到位图上。位图创建后,将它保存到HttpResponse对象的OutputStream,这样它就能呈现到浏览器。
代码清单6-14所示的处理程序还包含了一个IsReusable属性。IsReusable属性表示相同的处理程序是否可以用于多个请求。为了提高应用程序的性能,可以让它返回true。因为这个处理程序不会维护任何状态信息,把它放回池里,这样就能供将来的请求使用。
代码清单6-15所示的页面演示了如何使用ImageTextHandler.ashx文件。该页面包含3个HTML &img&标签,传递不同的查询字符串到处理程序(见图6-4)。
代码清单6-15 ShowImageTextHandler.aspx
【责任编辑: TEL:(010)】&&&&&&
关于&&的更多文章
Java领域最有影响力和价值的著作之一,由拥有20多年教学与研究经
本书描述了黑客用默默无闻的行动为数字世界照亮了一条道路的故事。
本书通过对目前中国企业在风险管理和内部控制工作中的
解释ASP.NET MVC框架与"文件页"Web框架的不同之处
本书以Android 4.X进行开发示范,通过大量图示与step
本书是根据全国计算机技术与软件专业技术资格(水平)考试《网络管理员考试大纲》所要求的考试范围而编写的试题集。全书共分10个
51CTO旗下网站2010年 总版技术专家分年内排行榜第一2009年 总版技术专家分年内排行榜第一
2011年 总版技术专家分年内排行榜第二
2010年 总版技术专家分年内排行榜第一2009年 总版技术专家分年内排行榜第一
2011年 总版技术专家分年内排行榜第二
本帖子已过去太久远了,不再提供回复功能。匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。2010年 总版技术专家分年内排行榜第一2009年 总版技术专家分年内排行榜第一
2011年 总版技术专家分年内排行榜第二
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 领导者处理事物的艺术 的文章

 

随机推荐