*.ashx文件

news/2024/4/24 5:47:52/
*.ashx文件
.ashx 文件用于写web handler的。其实就是带HTML和C#的混合文件。当然你完全可以用.aspx 的文件后缀。使用.ashx 可以让你专注于编程而不用管相关的WEB技术。.ashx必须包含IsReusable. 如下例所示


<% @ webhandler language="C#" class="AverageHandler" %>

using System;
using System.Web;

public class AverageHandler : IHttpHandler
{
public bool IsReusable
{ get { return true; } }
public void ProcessRequest(HttpContext ctx)
{
ctx.Response.Write("hello");
}
}
.ashx比.aspx的好处在与不用多一个html

注意了VS2005中Web应用程序项目模板里的Generic Handler 项,发现它是一个.ashx文件,实际上它是一个HttpHandler。后来查了一下.Net SDK文档,发现Asp.Net1.1也支持.ashx,但是没有给出详细内容。

我们都知道,HttpHandler是一个彻底自定义Http请求的方法,它通过web.config来定义Asp.Net运行时来过滤出要自定义的Http请求,发送到定义在web.config的指定类中。

利用.ashx文件是一个更好的方法,这个文件类似于.aspx文件,可以通过它来调用HttpHandler类,从而免去了普通.aspx页面的控件解析以及页面处理的过程。这个文件特别适合于生成动态图片,生成动态文本等内容。

建立方法如下:
首先打开一个Web项目,然后在任意目录下使用VS2003解决方案资源管理器的“添加”-->“添加新项”,在对话框中选择“文本文件”,然后在文件名处输入“TextBuilder.ashx”。

然后在同目录下,使用解决方案资源管理器,使用“添加”-->“添加类”,在类文件名处输入“TextBuilder.ashx.cs”。可以看出,它的文件命名规律与.aspx文件相同。

然后在.cs文件处输入以下代码(名称空间略):

using  System.Web
public   sealed   class  TextBuilder : IHttpHandler
{
    
public void ProcessRequest(HttpContext context)
    
{
        context.Response.ClearContent();
        context.Response.ContentType 
= "text/plain";
        context.Response.Write(
"Hello World");
        context.Response.End();
    }


    
public bool IsReusable
    
{
        
get return true; }
    }

}


然后在“TextBuilder.ashx”文件的第一行处输入上面这个类的调用代码:

<% @ WebHandler language="C#" Class="MyNamespace.TextBuilder" codebehind="TextBuilder.ashx.cs"  %>

上面的代码需要注意的是:必须在Class项中输入类的完整名称,即包括名称空间及类名称。

最后保存并编译项目。

使用IE测试,输入这个.ashx的地址即可。

大 家可以看出Response类有个OutputStream方法,可以向客户端输出二进制数据流,所以在我的项目中,使用这个方法,在一个.ashx中使 用DundasChart控件就可以生成非常好的统计图,用它发送二进制数据,方便快捷,而且不需在web.config内输入任何配置代码。

.ashx文件有个缺点,他处理控件的回发事件非常麻烦,比如说如果用它来生成DataGrid的列表也不是不行,但是处理数据的回发,需要一些.aspx页的功能,只有自己手动处理这些功能。所以,一般使用.ashx,用来输出一些不需要回发处理的项目即可。


http://www.ppmy.cn/news/829337.html

相关文章

android 调用ashx,手机知识:安卓手机如何打开.ashx文件

科技本身&#xff0c;支配宇宙的自然规律是充满魅力的&#xff01;因此越来越多的人开始关注科技的相关动态&#xff0c;近来安卓手机如何打开.ashx文件的消息也是引起了很多人的关注&#xff0c;那么既然现在大家都想要知道安卓手机如何打开.ashx文件&#xff0c;小编今天就来…

Ashx 文件

Ashx文件就是一个web handler文件&#xff0c;可以添加这个文件&#xff0c;加上web.config的配置来实现map url &#xff0c;即把请求路由到 handler中来处理 1、添加一个handler.ashx 2、配置web.config <system.web> <compilation debug"true" targetF…

Ashx文件的使用方法

一提到Ashx文件&#xff0c;我们就会想到http handler以及图片加载&#xff08;在之前我们一般使用ASPX或者Webservice去做&#xff09;&#xff0c;一般做法如下&#xff1a; Handler.ashx&#xff1a;<% WebHandler Language"C#" class"Handler" %>…

ashx 文件的运用

在ASP.NET中有一种这样格式的文件ashx文件&#xff0c;作什么用的呢&#xff1f;如果你想创建一个ASP.NET文件&#xff0c;它不是aspx文件&#xff0c;它能动态的返回一个图片、XML文件或其他非HTML文件。那就使用ashx文件了。下面介绍下使用方法&#xff1a;1. 使用ASHX handl…

.ashx文件

ashx是什么文件,如何创建 .ashx 文件用于写web handler的。其实就是带HTML和C#的混合文件。当然你完全可以用.aspx 的文件后缀。使用.ashx 可以让你专注于编程而不用管相关的WEB技术。.ashx必须包含IsReusable.建立方法如下&#xff1a; 首先打开一个Web项目&#xff0c;然后在…

ashx文件

ashx是什么文件?   .ashx 文件用于写web handler的。.ashx文件与.aspx文件类似&#xff0c;可以通过它来调用HttpHandler类&#xff0c;它免去了普通.aspx页面的控件解析以及页面处理的过程。其实就是带HTML和C#的混合文件。 .ashx文件适合产生供浏览器处理的、不需要回发处…

ashx文件的使用

最近在研究DTcms,ashx用于生成登陆的code,所以研究了一下。 ashx是什么文件 .ashx 文件用于写web handler的。.ashx文件与.aspx文件类似&#xff0c;可以通过它来调用HttpHandler类&#xff0c;它免去了普通.aspx页面的控件解析以及页面处理的过程。其实就是带HTML和C#的混合文…

ashx 文件怎么用

本文导读&#xff1a;ashx是什么文件,如何创建 .ashx 文件用于写web handler的。其实就是带HTML和C#的混合文件。.ashx文件类似于.aspx文件&#xff0c;可以通过它来调用HttpHandler类&#xff0c;从而免去了普通.aspx页面的控件解析以及页面处理的过程。 一、ashx文件的添加 打…

图像处理之图像灰度化

图像灰度化 将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定&#xff0c;而每个分量有255中值可取&#xff0c;这样一个像素点可以有1600多万 (255255255)的颜色的变化范用。而灰度图像是R、G、B三个分量相同的一种特…

【C++ 重要知识点总结】Boost C++ 库 Asio

本章介绍了 Boost C 库 Asio&#xff0c;它是异步输入输出的核心。 名字本身就说明了一切&#xff1a;Asio 意即异步输入/输出。 该库可以让 C 异步地处理数据&#xff0c;且平台独立。 异步数据处理就是指&#xff0c;任务触发后不需要等待它们完成。 相反&#xff0c;Boost.A…

QQ同步登入出现 回调地址非法,请使用已注册的回调地址(21006)!错误解决办法

错误信息&#xff1a;回调地址非法&#xff0c;请使用已注册的回调地址(21006)&#xff01; 解决办法是在&#xff1a; 只需要在connect.qq.com后台将回调地址参数修改为http://www.xxx.com(注你的域名)就可以解决&#xff0c;修改后在1-2小时内将会生效。 <script>docum…

qq邮箱日历同步服务器,科技教程:qq邮箱客户端怎么使用exchange服务同步日历?...

如今越来越多的小伙伴对于qq邮箱客户端怎么使用exchange服务同步日历?这方面的问题开始感兴趣&#xff0c;看似平静的每一天&#xff0c;在每个人身上都在发生着各种各样的故事&#xff0c;因为大家现在都是想要了解到此类的信息&#xff0c;那么既然现在大家都想要知道qq邮箱…

Android iOS Mac QQ邮箱 日历同步

QQ邮箱 先要开启授权码&#xff0c;这就要求你先绑定一个手机&#xff0c;具体设置请看官方教程。 Android & iOS 设置好后&#xff0c;先获得一个授权码&#xff0c;进入QQ邮箱&#xff1a; 设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务->生成授…

Python 时间同步程序

Python 时间同步程序 运行结果 两种修改本地时间的方法 (局域网内&#xff0c;利用网关服务器&#xff0c;穿越代理&#xff0c;与互联网时间同步的方法&#xff1a; 前部分用于win7系统&#xff0c;后部分用于winserver2008。 需要 pip3 install ntplib 需要启动Windows Time…

服务器怎么和本地文件同步,本地与服务器文件同步

本地与服务器文件同步 内容精选 换一换 在IntelliJ上选择“项目”,找到“.idea”文件夹,单击右键选择“新建>文件”, 输入文件名“settings.json”生成settings.json文件。如图1所示。复制以下代码至新创建的settings.json文件中,修改以下代码中的服务器名称、目标服务器…

QT线程同步与异步处理

平时我们使用线程的时候一般是继承QThread类&#xff0c;实现它的run()函数&#xff0c;将需要在线程中执行的代码放在run()里进行执行。需要注意的事项&#xff1a;如果是while循环&#xff0c;想要结束线程&#xff0c;调用QThread::quit是没有用&#xff0c;因为这样的线程根…

修复airdisk上微力同步功能拒绝访问的问题

记录一下解决airdisk Q3X NAS服务器的微力同步功能拒绝请求的问题 这个问题也是困扰了我两天&#xff0c;我询问了airdisk的售后&#xff0c;以及微力同步社区都没有任何回应&#xff0c;最后还是添加了微力同步开发者的QQ才解决问题。。。 流程 解决方法&#xff1a; 首先…

DataX以及增量同步

目录 第一部分&#xff1a;DataX一、DataX基本知识二、DataX应用三、DataX安装测试四、DataX性能调优五、DataX源码编译问题整理六、datax增量同步 第二部分&#xff1a;增量同步一、数据库增量同步数据思路二、数据同步工具 Otter1. Canal2. Otter能解决什么问题 三、Otter与D…

微力同步

介绍 微力同步是一款跨平台的文件同步工具&#xff0c;一切都像极了老牌同步工具 Resilio Sync&#xff0c;微力同步支持Windows、macOS、Linux以及群晖、QNAP、WEstern Digital和Android平台&#xff0c;使用key分享文件&#xff0c;有需要的赶快下载吧! 功能介绍 使用 P2P…

1.1.6 LSDB同步

邻接关系 邻接建立过程 讲完了报文之后我们具体来看一下是怎么同步的&#xff0c;我们可以看到下图是我们LSDB的过程&#xff1a; 注意&#xff1a; 我们要注意&#xff0c;在到达同步过程之前我们先要达到2-way的状态&#xff0c;就是我们首先要有邻居状态的建立&#xff0c;才…