asp.net问题ashx文件有什么用

如题所述

Handler.ashx ?
引自网络...
-----------
ASP.NET2.0 Person Web Site:将图片以二进制的从数据库读取
在ASP.NET Person Web Site Starter Kits中,图片的是以二进制的形式存放在数据库里,微软提供的读取该图片的方式是通过handler.ashx来实现的.
首先你所看到的对图片的引用都是类似如下
<img src="Handler.ashx?AlbumID=<%# Eval("AlbumID") %>
的形式,也就是你所看到的每一个图片都由Handler.ashx动态生成,所以在你保存你所看到的"图片"时,它的命名都是Handler.ashx.
使用handler.ashx而不是handler.aspx来引用图片并不是一定的,换句话说,你可以将该文件改为handler.aspx并没有本质的区别,不过根据微软的文档,使用*.ashx作为扩展名的文档比*.aspx的文档性能高,因为它减少了控件树的生成.
----------
这是handler.ashx代码:

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

using System;
using System.Web;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Web.Caching;
using System.Data;

public class MyHandle : IHttpHandler {

public void ProcessRequest (HttpContext context) {
//从数据库中取
MemoryStream ms = JSZ.SQLServerDAL.TestDAL.GetImage(1);
DataTable dt = JSZ.SQLServerDAL.TestDAL.GetTable(1);
Byte[] image = (Byte[])dt.Rows[0]["Photo"];
MemoryStream ms = new MemoryStream(image, 0, image.Length);
if (ms != null)
{
//取得图像MemoryStream大小
int bufferSize = (int)ms.Length;
//建立 buffer
byte[] buffer = new byte[bufferSize];
//调用MemoryStream.Read,自MemoryStream 读取至buffer,并返回count
int countSize = ms.Read(buffer, 0, bufferSize);
//返回图像buffer
context.Response.OutputStream.Write(buffer, 0, countSize);
}
}

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

参考资料:http://zhidao.baidu.com/question/44242832.html

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-06-02
Handler.ashx ? 引自网络... ----------- ASP.NET2.0 Person Web Site:将图片以二进制的从数据库读取 在ASP.NET Person Web Site Starter Kits中,图片的是以二进制的形式存放在数据库里,微软提供的读取该图片的方式是通过handler.ashx来实现的. 首先你所看到的对图片的引用都是类似如下 <img src="Handler.ashx?AlbumID=<%# Eval(" AlbumID")= %=> 的形式,也就是你所看到的每一个图片都由Handler.ashx动态生成,所以在你保存你所看到的"图片"时,它的命名都是Handler.ashx. 使用handler.ashx而不是handler.aspx来引用图片并不是一定的,换句话说,你可以将该文件改为handler.aspx并没有本质的区别,不过根据微软的文档,使用*.ashx作为扩展名的文档比*.aspx的文档性能高,因为它减少了控件树的生成. ---------- 这是handler.ashx代码: <%@ WebHandler Language="C#" Class="MyHandle" %> using System; using System.Web; using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Web.Caching; using System.Data; public class MyHandle : IHttpHandler { public void ProcessRequest (HttpContext context) { //从数据库中取 MemoryStream ms = JSZ.SQLServerDAL.TestDAL.GetImage(1); DataTable dt = JSZ.SQLServerDAL.TestDAL.GetTable(1); Byte[] image = (Byte[])dt.Rows[0]["Photo"]; MemoryStream ms = new MemoryStream(image, 0, image.Length); if (ms != null) { //取得图像MemoryStream大小 int bufferSize = (int)ms.Length; //建立 buffer byte[] buffer = new byte[bufferSize]; //调用MemoryStream.Read,自MemoryStream 读取至buffer,并返回count int countSize = ms.Read(buffer, 0, bufferSize); //返回图像buffer context.Response.OutputStream.Write(buffer, 0, countSize); } } public bool IsReusable { get { return false; } } }
第2个回答  2008-06-19
一般处理文件(ashx)可以输出任意类型的数据,比如文本,还有图片,甚至是其他特殊文档。而aspx只用于网页显示。
第3个回答  2016-05-18
ashx 文件,叫一般处理程序。

其实也就是封装了请求和响应,没有页面展示。就是负责获取客户端的请求,处理逻辑后,输出打印结果。
一般配合ajax编写功能模块。
第4个回答  2016-08-01
这个是用于纯后台处理类型的页面,不像aspx的打开一般是一个网页。

这种设计上用于处理数据,然后可能需要返回结果,一般没有前台代码。

ashx是什么文件
ashx文件是ASP.NET中的一种动态Web文件,也被称为HTTP处理程序。它是用来处理特定的HTTP请求和响应的服务器端脚本文件。通过ashx文件,开发者可以创建自定义的HTTP处理程序来扩展Web应用程序的功能。ashx文件的作用 在ASP.NET应用程序中,ashx文件主要用于处理特定的HTTP请求,并执行相应的操作,如处理特定的...

ashx是什么文件
总结来说,ashx文件是ASP.NET中用于处理动态Web请求的灵活工具。它们通过执行特定的代码逻辑来生成响应数据,并返回给客户端。由于其高效和灵活的特性,ashx文件在Web开发中有着广泛的应用。

asp.net问题ashx文件有什么用
使用*.ashx作为扩展名的文档比*.aspx的文档性能高,因为它减少了控件树的生成. --- 这是handler.ashx代码: <%@ WebHandler Language="C#" Class="MyHandle" %> using System; using System.Web; using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Web.Caching;...

.ashx为后缀的文件是干什么用的?其中的IHttpHandler 接口是什么?通俗一 ...
ashx是通用处理器,是最基本的ASP.NET Handler,用于最基本的请求处理操作,是ASP.NET的基础框架。所有的Page其实都实现这个接口,如果你了解http到底是怎么工作的,你就很容易理解Handler是干什么的,通俗点儿就是输出数据,任何数据都可以,比如下载的文件、Json数据、当然还有Html文档等等。

在asp.net中handler.ashx文件有何作用?
它的作用就是用来处理请求的,实际上它就是一个实现了IHttpHandler的类,当客户端请求某个.ashx时,会产生.ashx所对应类的实例,然后通过转换成IHttpHandler的接口引用,再调用你定义的ProcessRequest方法处理客户端的请求并返回结果给客户端。整个过程就是这样,所有的请求处理都是交给实现了IHttpHandler的类来...

asp.net 为什么把JS文件的扩展名写成ASHX
你创建错了吧,ashx是asp.net的一般处理程序,一般用于没有页面的处理程序,比如ajax请求数据。

一般处理程序ashx和页面处理程序aspx的区别
ashx 文件用于写web handler的。.ashx文件与.aspx文件类似,可以通过它来调用HttpHandler类,它免去了普通.aspx页面的控件解析以及页面处理的过程。ashx文件适合产生供浏览器处理的、不需要回发处理的数据格式,例如用于生成动态图片、动态文本等内容 ASP.NET 运行时将调用处理程序的 ProcessRequest 方法来处理...

...配置服务器支持该文件呀?,还有php能与ashx文件互相调用吗?_百度...
是asp.net的中的一个应用类型的文件扩展名,提供http服务,一般处理程序(HttpHandler)是·NET众多web组件的一种,ashx是其扩展名。一个httpHandler接受并处理一个http请求,类比于Java中的servlet。类比于在Java中需要继承HttpServlet类。

如何打开ashx文件
1、先是到百度中下载一个 visual studio 软件,可以下载最新版的或者下载其他的版本,这个可以根据自己的电脑配置而定的。2、然后等待下载完成后,双击安装程序,安装visual studio软件,3、然后鼠标右键单击ashx文件,选择打开方式中的visual studio打开。4、最后就可以打开ashx文件了。

C# .net问题:打算全部用ashx写个后端项目,前端用html+js+ajax与后端交 ...
ASXH是一般的网站应用程序,主要用来处理小型的,不需要回发的请求,比如发送个图片给客户端啊,这种。他不是一个项目,而是一个项。只要是ASP.NET项目中,都可以右键添加一个asxh项,用于url处理请求。优点是很简单,缺点是很老很过时,至于以后和其他客户端交互更是难,因为asxh项是很难维护成一个...

相似回答