从这一节开始我们就开始接触一般处理程序了,一般处理程序是最高效的,执行过程是最简单的,但是其原理非常重要,一旦我们把一般处理程序学好了,再学WebForm就相当相当容易了,几乎可以速成。

我们在Visual Studio 2010中添加一个一般处理程序时都会生成一个以ashx为扩展名的文件,文件中的代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<%@ WebHandler Language="C#" Class="First" %>

 

using System;

using System.Web;

 

public class First : IHttpHandler {

     

    public void ProcessRequest (HttpContext context) {

        context.Response.ContentType = "text/plain";

        context.Response.Write("Hello World");

    }

  

    public bool IsReusable {

        get {

            return false;

        }

    }

 

}

从以上代码我们可以发现,一般处理程序是一个实现了IHttpHandler接口的类,可以在服务器端执行,必然也可以从浏览器获得数据,也可以发给浏览器数据,那么上面的代码各自都代表什么呢?

ProcessRequest (HttpContext context)方法在程序被访问时调用,参数是请求上下文的对象,通过对象可以处理信息,context.Response.Write("Hello World")是向浏览器输出方法,把数据从服务器发送到浏览器。

那么,一般处理程序的运行都发生了些什么事情呢?他是怎么把数据通过服务器发送给浏览器的呢?请看下图:

上图只是一个简单的模拟用户通过一般处理程序上网的过程,也许你可以似乎明白了,原来上网也是打开一个电脑里的东西,只是这个电脑你我们的普通家庭电脑装备厉害一点而已,上图已经有了上网的大致过程,此图要熟练的理解,只有这样再以后开发的过程中才知道哪里出了毛病将导致什么问题,也能让用户更好的享受网上冲浪的乐趣,一定要做到,只要用户第一次来你的网站,就让他在你的网站入驻。

其实,ASPX和MVC的处理过程也复杂不到哪去,只是在服务器端做了更多更复杂一点的东东,但是ASHX是他们的基础,也是重中之重,假如ASHX学好了,ASPX可以无师自通,自己随便那一本书看就可以了,理解MVC也很容易了,所以,ASHX是一定要学好的,废话不说了,以后将以大量篇幅介绍ASHX,敬请期待。谢谢!

ASP.NET【3】--ASHX相关推荐

  1. ASP.NET【4】--ASHX

    上一节我们了解到,建立一个一般处理程序的时候,一般处理程序都会实现IHttpHandler接口,那么我们就在帮助文档里查询一下,查询.Net Framework 4的System.Web命名空间下的接 ...

  2. ASP.NET【2】

    从上一节我们了解到ASP.NET是一种动态网页技术,在服务器端运行.Net代码,服务器端接收处理动态生成HTML代码,然后发送给浏览器,再由浏览器解析HTML代码将数据呈现给用户. 那么,下面我来介绍 ...

  3. ASP.NET【1】

    有很多人学过ASP,用ASP做过网站,可是到ASP .NET环境下发现,变化真是太大了,其实,ASP.NET不能只被看做是 Active Server Page (ASP) 的下一个版本,而且是一种建 ...

  4. 【基础知识】ASP.NET[基础一(ashx)]

    一.ASP.NET介绍 1.ASP.NET包括: 一般处理程序(ashx):WebForm ( aspx ):MVC(Model view con~~): 2.ASP.NET的常用文件(重点): 1& ...

  5. 【原创】【推荐】《ASP.NET 3.5+SQL Server网站模块化开发全程实录》出版记

    进过半年多的努力,<ASP.NET 3.5+SQL Server网站模块化开发全程实录>一书终于得以由清华大学出版社顺利出版. 第一次出版此类图书,不免其中会有诸多纰漏,还望广大读者不吝指 ...

  6. 【开源】分享一个前后端分离方案-前端angularjs+requirejs+dhtmlx 后端asp.net webapi

    一.前言 半年前左右折腾了一个前后端分离的架子,这几天才想起来翻出来分享给大家.关于前后端分离这个话题大家也谈了很久了,希望我这个实践能对大家有点点帮助,演示和源码都贴在后面. 二.技术架构 这两年a ...

  7. ASP.NET CORE系列【一】搭建ASP.NET CORE项目

    原文:ASP.NET CORE系列[一]搭建ASP.NET CORE项目 为什么要使用 ASP.NET Core? NET Core 刚发布的时候根据介绍就有点心里痒痒,微软的尿性都懂的,新东西bug ...

  8. ASP.NET MVC 1.0 RC 版发布了【转】

    [原文地址]ASP.NET MVC 1.0 Release Candidate Now Available [原文发表日期] Tuesday, January 27, 2009 12:13 PM 今天 ...

  9. 【转】ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证)...

    [转]ASP.NET验证控件详解(非空验证,比较验证,范围验证,正则表达式,自定义验证) ASP.NET验证控件详解 现在ASP.NET,你不但可以轻松的实现对用户输入的验证,而且,还可以选择验证在服 ...

最新文章

  1. 取文字_取一个好听的女孩名字
  2. sql server 用户'sa'登录失败(错误18456)
  3. C# 结构与类的区别
  4. react 动态路 嵌套动子路由_react 路由动态加载组件,实现按需加载
  5. 中国数据总线电缆市场趋势报告、技术动态创新及市场预测
  6. 关于本学期西南交通大学ACM-ICPC校集训队 训练计划(Beta 1.0)
  7. Flutter打包apk中的一些巨坑
  8. c#类似跑马灯抽签小程序
  9. 安装SHARP MX-3618NC PCL6打印机驱动程序
  10. 百度地图-手动JS触发自定义Marker覆盖物点击事件
  11. input onfocus onblur
  12. 2020计算机行业就业职位及分析
  13. 用MATLAB画线段(简单说)
  14. Codeforces 272C Dima and Staircase 思维 or 线段树
  15. 早秋山居 --温庭筠[唐.五言律诗]
  16. 【最全】ISTQB- FL模拟题(含答案)
  17. 大数据分析课程(数据分析课设--包含代码)
  18. pdf2swf用法和一些不能解决问题
  19. vue3之定义数据(Ref全家桶)
  20. 【每周一读】——你的孤独,虽败犹荣

热门文章

  1. asset文件夹路径 unity_Unity3D研究院之手游开发中所有特殊的文件夹
  2. .netcore 2.0 mysql_搭建连接MySql的三层架构的ASP.NetCore2.0的WebApi
  3. 优化服务器犯法吗,服务器稳定性对于SEO优化有什么影响
  4. 对比Hashtable、HashMap、TreeMap有什么不同(转)
  5. trycatch 不能捕获运行时异常_软件运行异常时的多种排查思路与方法
  6. 收集了一些python的文章
  7. 如何进行用户行为分析并提高用户粘性
  8. 线性判别用于提取词向量_历年试题公开 | 2017级线性代数(I)期末试题
  9. 系统学习深度学习(二十一)--GoogLeNetV4与Inception-ResNet V1,V2
  10. 图像局部特征(十四)--MSER特征