溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASP.NET【4】--ASHX

發(fā)布時(shí)間:2020-07-22 15:30:38 來(lái)源:網(wǎng)絡(luò) 閱讀:485 作者:jhq0113 欄目:編程語(yǔ)言

    上一節(jié)我們了解到,建立一個(gè)一般處理程序的時(shí)候,一般處理程序都會(huì)實(shí)現(xiàn)IHttpHandler接口,那么我們就在幫助文檔里查詢(xún)一下,查詢(xún).Net Framework 4的System.Web命名空間下的接口,我們會(huì)發(fā)現(xiàn)這個(gè)接口,這個(gè)接口里只有一個(gè)方法和一個(gè)屬性,方法是Proce***equest,屬性是IsReusable,其中Proce***equest方法的參數(shù)是HttpContext對(duì)象,它提供對(duì)用于為 HTTP 請(qǐng)求提供服務(wù)的內(nèi)部服務(wù)器對(duì)象(如Request、Response、Session和Server)的引用,即六大常用對(duì)象。

    說(shuō)了這么多,就是沒(méi)有代碼,總是感覺(jué)缺點(diǎn)什么,也感覺(jué)一切道理脫離了代碼,表達(dá)的意思就不明確,那就看下面代碼吧,這是我們的第一個(gè)ashx程序,也是作為一個(gè)初步的了解。

步驟:打開(kāi)Visual Studio 2010,點(diǎn)擊文件->新建->網(wǎng)站->選擇ASP.NET網(wǎng)站和ASP.NET空網(wǎng)站都可以,最左上角有語(yǔ)言選擇,我用的是C#。

例子1:

publicclassHandler : IHttpHandler{


publicvoidProce***equest (HttpContext context) {

       context.Response.ContentType = "text/html";

       context.Response.Write("<divstyle='background:#ff0000;font-size:36px'>Hello World</div>");

       context.Response.Write("<table border='5px'cellsapcing='0'><tr><td>HelloASP.Net</td></tr><tr><td>HelloC#</td></tr></table>");

       context.Response.Write("<a href='www.baidu.com'>百度首頁(yè)</a>");

  }


publicboolIsReusable {

get {

returnfalse;

       }

  }


}

   在這里我們把ContentType改成了”text/html”,我們右鍵在瀏覽器中查看時(shí),那么Response對(duì)象的Write方法在瀏覽器中輸出時(shí),瀏覽器就解析了HTML代碼,這樣寫(xiě)代碼太局限了,初次接觸就先這么寫(xiě),重要的是理解思想。

   Response對(duì)象算是我們第一個(gè)要接觸的對(duì)象了,Response對(duì)象一般都是從服務(wù)器獲取數(shù)據(jù),向?yàn)g覽器輸出,那么我們就查幫助文檔,看看Response對(duì)象都有什么常用方法呢?

   好多好多,但是我們可以看到Write()方法,Write()方法還有幾個(gè)重載函數(shù),Write()函數(shù)的作用是將參數(shù)對(duì)象寫(xiě)入到HTTP響應(yīng)輸出流;還有Clear()方法,作用是清除緩沖區(qū)流中的所有內(nèi)容輸出;Close()方法,作用是關(guān)閉客戶端的套接字鏈接;End()方法,作用是將當(dāng)前所有緩沖的輸出發(fā)送到客戶端,停止該頁(yè)的執(zhí)行,并引發(fā)EndRequest事件。好了就介紹這么多方法吧。具體怎么使用自己查吧。本節(jié)就先到這里,下一節(jié),將介紹Request對(duì)象。


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI