usingSystem;usingSystem.Web;publicclassAverageHandler:IHttpHandler{" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

ashx是什么文件,如何創建

系統 2411 0
.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應用程序項目模板里的GenericHandler 項,發現它是一個.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(HttpContextcontext)
{
context.Response.ClearContent();
context.Response.ContentType
= " text/plain " ;
context.Response.Write(
" HelloWorld " );
context.Response.End();
}


public bool IsReusable
{
get { return true ;}
}

}

然后在“TextBuilder.ashx”文件的第一行處輸入上面這個類的調用代碼:
<% @WebHandlerlanguage = " C# " Class = " MyNamespace.TextBuilder " codebehind = " TextBuilder.ashx.cs " %>
上面的代碼需要注意的是:必須在Class項中輸入類的完整名稱,即包括名稱空間及類名稱。

最后保存并編譯項目。

使用IE測試,輸入這個.ashx的地址即可。

大家可以看出Response類有個OutputStream方法,可以向客戶端輸出二進制數據流,所以在我的項目中,使用這個方法,在一個.ashx中使用DundasChart控件就可以生成非常好的統計圖,用它發送二進制數據,方便快捷,而且不需在web.config內輸入任何配置代碼。

.ashx文件有個缺點,他處理控件的回發事件非常麻煩,比如說如果用它來生成DataGrid的列表也不是不行,但是處理數據的回發,需要一些.aspx頁的功能,只有自己手動處理這些功能。所以,一般使用.ashx,用來輸出一些不需要回發處理的項目即可。

ashx是什么文件,如何創建


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 加勒比黑人在线 | 在线播放日韩 | 色18美女社区 | 日本一区二区日本免费 | 夜夜狠狠狠狠 | 简单视频在线播放jdav | 在线观看片成人免费视频 | 黄色一级片免费网站 | 91精品国产综合久久欧美 | 特级做人爱c级特级aav毛片 | 久揄揄鲁一二三四区高清在线 | 精品自拍视频在线观看 | 国产男女爽爽爽免费视频 | 免费看欧美一级特黄α大片 | 亚洲天天综合网 | 四虎永久在线观看 | 日本不卡在线播放 | 久久99国产综合精品 | 久久久久综合 | 有码中文字幕在线观看 | 欧美成人免费公开播放 | 四虎在线视频观看 | 亚洲精品成人一区二区www | 国产一区二区亚洲精品天堂 | 呦呦精品| 久久99国产乱子伦精品免 | 欧美日本亚洲国产一区二区 | 国模极品一区二区三区 | 夜精品a一区二区三区 | 国产成人91高清精品免费 | 13一14周岁毛片免费 | 神马影院午夜我不卡 | 亚洲国产图片 | 亚洲天天做日日做天天看2018 | 91久久爱 | 久草最新 | 久久高清 | 色综合久久久久久久久五月 | 色婷婷色99国产综合精品 | 久久国产中文字幕 | 色啦啦影院 |