2014-03-26 38 views
1

處理我想配置一個asp.net網站,以便每執行一次我的事件處理程序的請求(例如跟蹤/記錄一些信息來自請求對象)僅當請求將由PageHandlerFactory處理時。如何爲ASP.NET中的每個請求添加一個事件處理程序,這些請求將由PageHandlerFactory

我知道我可以寫在Application_BeginRequest,但這是要求每種請求(如* .axd左右,糾正我,如果我在這裏錯了)。 HttpContext.Current.CurrentHandler此時可能爲空,因此我無法將處理程序類型的條件邏輯。出於某種原因(遺留業務規則/檢查),我無法將我的邏輯移動到Application_EndRequest

回答

1

使用可以嘗試在asp.net

使用httphandler and httpmodule它有一個事件LogRequest

LogRequest - 在ASP.NET執行任何日誌記錄 當前請求之前。即使發生錯誤 ,也會引發LogRequest事件。您可以爲LogRequest事件提供一個事件處理程序,以 爲請求提供自定義日誌記錄。

Furthure在ASP.net我們

ASP.NET使用不同的HTTP處理程序,以滿足不同的文件類型。例如,網頁處理程序創建頁面並控制對象,運行代碼並呈現最終的HTML。 ASP.NET默認 處理程序:

1)頁處理程序(的.aspx) - 處理的Web頁面2)用戶控制處理程序 (的.ascx) - 處理的Web用戶控制頁面3)的Web服務處理程序 (的.asmx) - 處理Web服務頁面4)跟蹤處理程序(的trace.axd) - 處理跟蹤功能

您可以在 httphandler and httpmodule in asp.net

+0

好,我馬上去它那裏得到更深入的瞭解。 –

相關問題