客官请看图

 
图中的Httphandler就是处理程序。
 
两者的共同点
如果把aspx处理程序和ashx处理程序放到上图中,他们是处在相同的位置的,
他们都实现了IHttphandler接口。实现了IHttphandler才具备处理请求的能力
 
两者的不同点
微软对aspx下足了功夫,做了相当大的包装,里面含有控件,viewstate,还有自己的生命周期。
为了让开发人员更好的处理请求,微软采用了事件机制,让程序员可以在aspx的生命周期类 注入代码。
aspx是比ashx复杂的多的处理程序版本。
 
实现自己的处理程序
让用户访问127.0.0.1/hello.zz的时候,输出一些信息,把他当处理程序使用。
在一个a目录下建立app_code文件夹
新建hanler.cs文件,代码如下:
 using System;
using System.Web; public class helloZZ : IHttpHandler { public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
context.Response.Write("你请求的是hello.zz文件");
} public bool IsReusable {
get {
return false;
}
} }

再在a目录下建立handler.ashx,代码如下:

<%@ WebHandler  Language="C#"  Class="MyHandler" %>
using System;
using System.Web; 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;
}
} }

再建立如下的web.config

<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="false" targetFramework="4.0" />
<httpHandlers>
<add path="hello.zz" verb="*" type="helloZZ"/>
</httpHandlers>
</system.web>
</configuration>

特殊说明:

请直接用vs2012打开handler.ashx,右键用浏览器打开,这样做的只是为了构建一个web环境。
再请求hello.zz就可以了

一般处理程序(ashx)和页面处理程序(aspx)的区别的更多相关文章

  1. ASP.NET -- 一般处理程序ashx

    ASP.NET  --   一般处理程序ashx 如果在一个html页面向服务器端请求数据,可用ashx作为后台页面处理数据.ashx适合用作数据后台处理,相当于WebForm中的aspx.cs文件或 ...

  2. .net mvc 站点自带简易SSL加密传输 Word报告自动生成(例如 导出数据库结构) 微信小程序:动画(Animation) SignalR 设计理念(一) ASP.NET -- WebForm -- ViewState ASP.NET -- 一般处理程序ashx 常用到的一些js方法,记录一下 CryptoJS与C#AES加解密互转

    .net mvc 站点自带简易SSL加密传输   因项目需要,传输数据需要加密,因此有了一些经验,现简易抽出来分享! 请求:前端cryptojs用rsa/aes 或 rsa/des加密,后端.net ...

  3. jQuery获取一般处理程序(ashx)的JSON数据

    昨天有在开发的软件生产线生产流程,RFID扫描IC卡的数据,当中有用到jQuery获取一般处理程序(ashx)的JSON数据.今有把它写成一个小例子,望需要的网友能参考. 在网站中,创建一个一般应用程 ...

  4. Web-----》》》 一般处理程序 ashx

    一般处理程序 后缀: 前台页面:.ashx 后台页面:.ashx.cs 打开方式:右键程序集--在浏览器中查看--输入url(如http://localhost:6560/firstAshx.ashx ...

  5. asp.net的验证码插件及方法、ashx验证码一般处理程序

    需要引入一个ashx的一般处理程序! 把这个程序在前台当作一个图片使用就可以! 前台代码: <td> <img title="看不清?" style=" ...

  6. ashx和aspx的区别

    1. ashx是一般处理程序,一般返回的数据有两种,一种是html页面,一种是只返回一个字符串. 2. aspx是web窗体程序,每次新建都回自带一个界面和一个后台处理程序. 3. 根据以上两点,可以 ...

  7. 一般处理程序、ASP.NET和MVC的区别

    这个问题说起来,我有点惭愧 想当初在大学里学的就是ASP.NET WebForms 在实习期间也是用的WebForms来开发网站,然后就觉得.NET开发网站就是用这个开发模式 现在想想都想笑...实在 ...

  8. 对ASP.NET运行机制之 一般处理程序ashx的学习

    一般处理程序(HttpHandler)是·NET众多web组件的一种,ashx是其扩展名.其中一个httpHandler接受并处理一个http请求,类比于Java中的servlet.类比于在Java中 ...

  9. 学习笔记05一般处理程序ashx

    1.获取由表单传过来的参数var value1 = HttpContext.Request["健"]; 2.使得网站目录下的相对路径转化为绝对路径:(用于文件操作)var file ...

随机推荐

  1. famous javascript library.

    https://famo.us/ THE ULTIMATE WEB PLATFORM FOR DEVELOPERS AND DESIGNERS

  2. 关于Collections中的sort()方法总结

    用Java集合中的Collections.sort方法对list排序的两种方法 本文部分引用自:http://my.oschina.net/leoson/blog/131904 用Collection ...

  3. 关于Eclipse插件开发(四)-------给视图加下拉菜单和按钮和加入编辑器.

    本例将给视图加入下拉菜单和按钮,同时再为列表添加一个右键菜单. 创建ActionGroup类 加入菜单和按钮的方法与SWT和JFace组件的一样,先创建一个ActionGroup代码如下: MyAct ...

  4. [记录] nicescroll 在bootstrap tabs中工作

    Operlapping Nicescroll scrolbars in Bootstrap tabs 因为我的tab是指定id的 <!-- Nav tabs --> <ul clas ...

  5. xampp 安装后无法启动apache 的解决方法

    1,安装xampp 后,apache 无法启动,当时的报错已经没有证据了,大概的翻译就是端口 被block(锁定)的意思 2,通过 查找端口被占用,找到被占用程序,进行杀掉进程,或者卸载软件,参考网址 ...

  6. h2database源码浅析:MVTable与MVIndex

    Database包含一个Store:MVTableEngine.Store getMvStore() MVTableEngine.Store可以获取各tables:java.util.HashMap& ...

  7. Extjs combo赋值与刷新的先后顺序

    今天在跟一个弹出框中的多选下拉框赋值并实现反选的时候.惊讶的发现:原来我之前对于Combo的赋值的认知观是错误的. 我开始在窗体的beforeshow事件中对Combo控件赋值.开始使用了setVal ...

  8. jquery实现asp.net 网页鼠标所在位置

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="mouseposition. ...

  9. 第八篇、UITableView常用功能(左滑出现多个按钮,多选删除等)

    1.左滑动出现多个按钮 /** * 只要实现了这个方法,左滑出现按钮的功能就有了 (一旦左滑出现了N个按钮,tableView就进入了编辑模式, tableView.editing = YES) */ ...

  10. 17_JSP_入门

    [JSP简述] JSP全称是Java Server Pages,它和Servlet技术一样,都是一种用于开发动态Web页面的技术. * html页面:用html写的页面 * JSP页面:用html写页 ...