`

Asp.net 一般处理程序+扩展

阅读更多

上一篇博客中,提到一般处理程序真的不一般。这篇博客主要是给大家解惑。由于最近在做项目的过程中,用到了很多的一般处理程序,相信你也一定用到过,但是你真的了解它吗?

 

介绍:

 

一般处理程序的一般是相对于aspx页面来说的,它介于请求与响应之间的处理程序。说白了就是去掉了前台appx HTML 页面的cs部分,什么请求都可以处理,实现IHttpHandler接口。


通过VS2012中创建一个一般处理程序将会生成两个后缀名的文件.ashx和.ashx.cs。其中.ashx.cs对应的内容,如以下代码:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace web
{
    /// <summary>
    /// Handler 的摘要说明
    /// </summary>
    public class Handler : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            context.Response.Write("Hello World");
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}



从上面的代码可以看到,一般处理程序实际上就是一个实现IHttpHandler接口的处理程序类,这个处理程序被ASP.NET直接在系统配置文件映射到了ashx扩展名的请求上。这样,我们就不需要在配置文件中进行配置了。

优点:

 

因为不必继承Page类,所以没有那么多的事件要处理,消耗资源少,性能比aspx高。

实现:

 

一般处理程序可以完成的功能很多,输出HTML,效果跟aspx+cs是一样的,还可以用来发送非html类或无需html代码的数据等,比如文本、XML、图片,甚至二进制文件格式,还有最常用json数据格式等。

 

简单的举三个最常用的例子:

1、图片过滤(防盗链)
2、图片验证码

3、处理自定义后缀名请求

这个三个例子的代码,我通过转载的博客,为大家做一个详细的介绍。

 

总结:

 

以往我们都是从功能的角度来学习和思考某个页面怎样用,随着不断学习的深入,我更加的认为应该从原理和本质认识和学习,从上面转载的博客为大家解决这个问题。

 

 

========================================================================================================================

基于asp.net+easyui框架的系列博文:

 

使用Jquery+EasyUI框架开发项目+下载+帮助--EasyUI的简介

Asp.net之真假分页大揭秘、使用AspNetPager实现真分页

Asp.net前端页面开发总结

Asp.net 一般处理程序+扩展

Asp.Net构架(Http请求处理流程)、Asp.Net 构架(Http Handler 介绍)、Asp.Net 构架(HttpModule 介绍)

基于asp.net + easyui框架,js实现上传图片之前判断图片格式,同时实现预览,兼容各种浏览器+下载

基于asp.net+ easyui框架,js提交图片,实现先上传图片再提交表单

基于asp.net + easyui框架,一步步学习easyui-datagrid——界面(一)

基于asp.net + easyui框架,一步步学习easyui-datagrid——实现分页和搜索(二)

基于asp.net + easyui框架,一步步学习easyui-datagrid——实现添加、编辑、删除(三)

基于asp.net + easyui框架,一步步学习easyui-datagrid——完成,总结(四)

 

=========================================================================================================================

 

分享到:
评论

相关推荐

    ASP.NET一般处理程序图解详情

    下面将深入解析ASP.NET一般处理程序的工作原理及其在web开发中的应用。 首先,让我们理解ASP.NET Web开发的基本原理。在ASP.NET中,Web应用程序由一系列的HTTP模块、HTTP处理器和页面控件组成。当用户发起一个HTTP...

    开源:ASP.NET MVC+EF6+Bootstrap开发框架

    这些系统的共同特点是需要处理大量数据,进行复杂的业务逻辑运算,并且需要良好的用户体验,ASP.NET MVC+EF6+Bootstrap的组合能够满足这些需求,提供高效、可扩展和用户友好的解决方案。 总结来说,"开源:ASP.NET ...

    ASP.NET Core2.2+Vue.js+mysql+redis开发的网站框架

    ASP.NET Core 2.2是微软推出的一款高性能、跨平台的开源框架,用于构建Web应用程序。它是ASP.NET的全新版本,具有模块化、轻量级和高性能的特点,支持.NET Core和.NET Framework两种运行时环境。在ASP.NET Core 2.2...

    asp.net +access 网站+后台(完整站)

    ASP.NET是由微软开发的一个用于构建Web应用程序的框架,它提供了一种高效的、基于组件的模型来创建动态网站、Web服务和丰富的互联网应用程序。在这个场景中,ASP.NET与Access数据库结合,形成了一套完整的网站后台...

    Asp.Net Core 3.1 MVC+EF Core +SqlSugar ORM框架实例 多层架构示例Demo

    在Asp.Net Core 3.1中,你可以利用依赖注入、中间件和Kestrel服务器等特性,构建高效且可扩展的应用。 【EF Core】 Entity Framework Core (EF Core) 是微软提供的一种对象关系映射(ORM)框架,适用于.NET Core...

    asp.net 图书管理系统+毕业论文

    【ASP.NET 图书管理系统+毕业论文】是一款基于ASP.NET技术构建的图书管理应用程序,专为在Visual Studio 2003及以上版本上运行而设计。这个系统不仅包含了完整的图书管理功能,还融入了作者的毕业设计思想,展示了...

    ASP.NET2.0+XML+MSSQL05+Ajax

    ASP.NET 2.0、XML、SQL Server 2005 和 AJAX 是构建现代Web应用程序的关键技术,它们各自在Web开发领域中扮演着重要角色。接下来,我们将详细探讨这些技术及其相互之间的结合。 **ASP.NET 2.0** ASP.NET 2.0是微软...

    基于asp.net+Web+mvc4.0 EasyUI 最新 权限管理 开源 MES建材管理系统源码

    首先,ASP.NET是微软推出的一种服务器端编程框架,它为开发者提供了丰富的工具和API,简化了Web应用程序的开发过程。ASP.NET的MVC(Model-View-Controller)模式则是一种软件设计模式,将业务逻辑、视图呈现和用户...

    基于ASP.Net 3.5+LINQ+WFC+JSON+AJAX实现的综合程序例子源码

    该版本引入了对Visual Studio 2008和.NET Framework 3.5新特性的支持,例如扩展的ADO.NET实体框架、ASP.NET AJAX等。 【LINQ】 LINQ(Language Integrated Query)是.NET Framework 3.5中的一个重大改进,它允许...

    ASP.NET MVC+EF+LINQ+Spring.Net 用户增删除改查简单Demo

    ASP.NET MVC、Entity Framework (EF)、LINQ 和 Spring.Net 是.NET开发中常用的四大技术,它们结合使用可以构建高效、可扩展的Web应用程序。在这个"ASP.NET MVC+EF+LINQ+Spring.Net 用户增删除改查简单Demo"中,我们...

    一套通用的Easyui+asp.net mvc开发框架源码

    而asp.net MVC5是微软开发的一个强大的Web应用框架,基于模型-视图-控制器(MVC)设计模式,用于构建可维护、可扩展的Web应用程序。 【描述】中提到,这套源码适用于SQL2008及以上版本的数据库,意味着它具有与SQL ...

    亲密接触ASP.Net(C#)+代码

    ASP.NET是微软公司开发的一种用于构建Web应用程序的框架,它基于.NET Framework,为开发者提供了高效、安全且可扩展的平台。ASP.NET C#是ASP.NET框架的一个重要组成部分,它允许开发者使用C#语言进行Web应用的开发。...

    ASP.NET+MVC4+Web+教程+源码

    ASP.NET MVC4是一种用于构建动态、数据驱动的Web应用程序的框架,它结合了ASP.NET的高效性和MVC(Model-View-Controller)设计模式的强大功能。MVC4是该框架的一个版本,它在MVC3的基础上进行了改进和扩展,旨在提供...

    ASP.NET4高级程序设计(第4版).zip.001|中文版.完整书签

    《ASP.NET 4高级程序设计(第4版)》是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的建议。书中还深入讲述了其他ASP.NET图书...

    ASP.NET Mvc + NHibernate + Unity Application Block 示例程序

    ASP.NET MVC、NHibernate 和 Unity Application Block 是三个在软件开发中广泛应用的技术,它们共同构建了高效、可扩展的Web应用程序。下面将详细解释这三个技术及其在实际应用中的结合。 **ASP.NET MVC** ASP.NET ...

    精通ASP.NET20+SQL+Server2005项目开发.rar

    ASP.NET是微软公司推出的用于构建Web应用程序的框架,它基于.NET Framework,提供了丰富的功能和工具,使得开发者可以更高效地创建动态、交互式的网站。在ASP.NET 2.0版本中,微软引入了许多改进和新特性,使得开发...

    21天学会asp.net

    2. **C#语言基础**:ASP.NET主要使用C#作为后端编程语言,因此对C#的基本语法、类、对象、异常处理、文件操作等知识的掌握至关重要。 3. **ASP.NET架构**:了解ASP.NET的MVC(Model-View-Controller)和Web Forms两...

    ASP.NET新闻发布系统+毕业论文

    ASP.NET是.NET框架的一部分,提供了一种高效、安全且可扩展的平台来开发Web应用程序。该系统可能包括用户界面、后端数据库、新闻发布、编辑、审核、分类、搜索等功能,为网站管理员提供了方便的方式来维护和更新动态...

Global site tag (gtag.js) - Google Analytics