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

黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

ashx是什么文件,如何創(chuàng)建

系統(tǒng) 2528 0
.ashx 文件用于寫web handler的。其實就是帶HTML和C#的混合文件。當然你完全可以用.aspx 的文件后綴。使用 .ashx 可以讓你專注于編程而不用管相關(guān)的WEB技術(shù)。 .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 項,發(fā)現(xiàn)它是一個.ashx文件,實際上它是一個HttpHandler。后來查了一下.Net SDK文檔,發(fā)現(xiàn)Asp.Net1.1也支持.ashx,但是沒有給出詳細內(nèi)容。

我們都知道,HttpHandler是一個徹底自定義Http請求的方法,它通過web.config來定義Asp.Net運行時來過濾出要自定義的Http請求,發(fā)送到定義在web.config的指定類中。

利用.ashx文件是一個更好的方法,這個文件類似于.aspx文件,可以通過它來調(diào)用HttpHandler類,從而免去了普通.aspx頁面的控件解析以及頁面處理的過程。這個文件特別適合于生成動態(tài)圖片,生成動態(tài)文本等內(nèi)容。

建立方法如下:
首先打開一個Web項目,然后在任意目錄下使用VS2003解決方案資源管理器的“添加”-->“添加新項”,在對話框中選擇“文本文件”,然后在文件名處輸入“TextBuilder.ashx”。

然后在同目錄下,使用解決方案資源管理器,使用“添加”-->“添加類”,在類文件名處輸入“TextBuilder.ashx.cs”。可以看出,它的文件命名規(guī)律與.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”文件的第一行處輸入上面這個類的調(diào)用代碼:
<% @WebHandlerlanguage = " C# " Class = " MyNamespace.TextBuilder " codebehind = " TextBuilder.ashx.cs " %>
上面的代碼需要注意的是:必須在Class項中輸入類的完整名稱,即包括名稱空間及類名稱。

最后保存并編譯項目。

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

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

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

ashx是什么文件,如何創(chuàng)建


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論