首页 > 代码库 > 开发路程(12):ashx文件和aspx
开发路程(12):ashx文件和aspx
ashx文件和aspx文件有什么不同? 我们先新建一个ashx文件看看:
1 <%@ WebHandler Language="C#" Class="Handler" %> 2 using System; 3 using System.Web; 4 public class Handler : IHttpHandler 5 { 6 public void ProcessRequest (HttpContext context) 7 { 8 context.Response.ContentType = "text/plain"; 9 context.Response.Write("Hello World");10 }11 public bool IsReusable 12 {13 get 14 {15 return false;16 }17 }18 }
这是新建了Handler.ashx文件.
ashx比aspx简洁多了吧.只有一个文件,没有后台cs文件(基于代码安全考虑,后边我们会自己添加这个文件).ashx对比aspx文件,就好像 少了cs文件.其实这就是ashx和aspx不同的地方,因为aspx要将前后台显示和处理逻辑分开,所以就弄成了两个文件,其实,在最终编译的时 候,aspx和cs还是会编译到同一个类中去.这中间就要设计html的一些逻辑处理.而ashx不同,它只是简单的对web http请求的直接返回你想要返回的结果.比aspx少处理了html的过程.理论上,比aspx要快.
看看.net config文件中对两个文件类型请求的配置吧:
1 <add path="*.aspx" verb="*" type="System.Web.UI.PageHandlerFactory" validate="True" />2 <add path="*.ashx" verb="*" type="System.Web.UI.SimpleHandlerFactory" validate="True" />
可以看到两个文件处理的类不一样(ashx处理的类叫SimpleHandleFactory,既然叫Simple,应该处理过程也比较Simple.响应速度也应该快点吧:)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。