這篇文章將為大家詳細(xì)講解有關(guān)ASP.NET如何把a(bǔ)shx寫(xiě)到類(lèi)庫(kù)里并在頁(yè)面上調(diào)用,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
在類(lèi)庫(kù)中建Http Handler的操作很簡(jiǎn)單,就是添加一個(gè)普通的類(lèi),然后把之前ashx里的代碼幾乎一模一樣貼到這個(gè)類(lèi)中。但要注意命名空間和類(lèi)名,因?yàn)橹笪覀儠?huì)用到。
樣例Handler:
代碼如下:
namespace EdiBlog.Core.Web.HttpHandlers
{
using System;
using System.Web;
public class ExampleHandler : IHttpHandler
{
public bool IsReusable
{
get { return false; }
}
public void ProcessRequest(HttpContext context)
{
// 你自己的邏輯...
}
}
}
這個(gè)handler的邏輯不重要,你可以自己定義。關(guān)鍵點(diǎn)是實(shí)現(xiàn):IsReusable及ProcessRequest這兩個(gè)接口中定義的成員。
下面我們要去站點(diǎn)的web.config中注冊(cè)這個(gè)handler。如果你用的是IIS7及以上版本,并用了集成模式,就要這樣配置:
在system.webServer\handlers節(jié)點(diǎn)下添加:
其中,path是訪問(wèn)handler用的路徑,并且拓展名需要在iis中注冊(cè),如果你和我一樣用的是虛擬主機(jī),并且不能自己管理IIS,請(qǐng)不要使用如abc這樣的IIS默認(rèn)不支持的拓展名。
type里有兩個(gè)參數(shù),第一個(gè)是handler類(lèi)的完整命名,第二個(gè)是程序集的名稱(chēng)。
現(xiàn)在我們?cè)诰W(wǎng)頁(yè)上就可以用ex.axd來(lái)訪問(wèn)handler了!
關(guān)于“ASP.NET如何把a(bǔ)shx寫(xiě)到類(lèi)庫(kù)里并在頁(yè)面上調(diào)用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。