其實擴充套件名為ashx與為axd基本上是一樣的,都是用於寫web handler,可以通過它來呼叫ihttphandler類,它免去了普通.aspx頁面的控制項解析以及頁面處理的過程。
唯一不同的地方是:axd副檔名的必須要在web.config中的中進行註冊,而ashx直接在專案中當成aspx那樣新增使用即可。
所以在專案的新增檔案中,嚮導只有新增ashx檔案的模板,而沒有新增axd檔案的模板。那微軟為什麼這麼無聊搞兩個字尾,全部使用ashx不就行了麼?乾脆利落。原來,如果你的web handler**不在web的專案中的話,那你就不能使用ashx了,因為如果不在web.config中註冊的話,系統根本不知道要在那個dll庫中才能找到相應的**。
如:只有註冊了,web才知道opensearch.axd原來是在company.extensions.dll中,使用company.components.httphandler.opensearchhandler類處理。
當然你搞個在伺服器的iis裡有個預設的對映:就是將*.axd對映到aspnet_isapi.dll上。
webconfig裡那麼寫的原理是,首先iis會把.axd的檔案handle,然後就交給freetextboxcontrols.assemblyresourcehandler, freetextbox這個命名的類來處理而不是讓aspnet去處理。
但是你的伺服器提供商可能為了安全起見,把.axd到aspnet_isapi.dll的對映去掉了,所以你在伺服器執行就錯誤了。你現在唯一能做的就是聯絡你的伺服器提供商,讓他們恢復這個對映。
副檔名: .axd
執行檔案:c:\windows\microsoft.net\framework\v1.1.4322\aspnet_isapi.dll
限制為:get,head,post,debug
指令碼引擎打勾
字尾為axd 的檔案
其實擴充套件名為ashx與為axd基本上是一樣的,都是用於寫web handler,可以通過它來呼叫ihttphandler類,它免去了普通.aspx頁面的控制項解析以及頁面處理的過程。唯一不同的地方是 axd副檔名的必須要在web.config中的中進行註冊,而ashx直接在專案中當成aspx那樣...
字尾為 ashx 與 axd 的檔案有什麼區別
其實擴充套件名為ashx與為axd基本上是一樣的,都是用於寫web handler,可以通過它來呼叫ihttphandler類,它免去了普通.aspx頁面的控制項解析以及頁面處理的過程。唯一不同的地方是 axd副檔名的必須要在web.config中的中進行註冊,而ashx直接在專案中當成aspx那樣...
字尾為 ashx 與 axd 的檔案有什麼區別
字尾為 ashx 與 axd 的檔案有什麼區別 其實擴充套件名為ashx與為axd基本上是一樣的,都是用於寫web handler,可以通過它來呼叫ihttphandler類,它免去了普通.aspx頁面的控制項解析以及頁面處理的過程。唯一不同的地方是 axd副檔名的必須要在web.config中的中...