2011-04-25 50 views

回答

0

不能添加控件的HttpModule,但你可以修改輸出。使用HttpContext.Current獲取當前上下文,並使用Response屬性修改響應。

+0

我可以更改響應Application_EndRequest(); – balu 2011-04-25 09:57:34

+0

是的 - 您可以使用EndRequest,但根據您的要求,更好的選項可能是PostRequestHandlerExecute(http://msdn.microsoft.com/en-us/library/system.web.httpapplication.postrequesthandlerexecute.aspx)。 – VinayC 2011-04-25 10:07:10

0

我不知道你想達到什麼目的,但也許一次asp.net已經映射的請求的處理程序類似

public void Init(HttpApplication context) 
{ 
    context.PostMapRequestHandler += new EventHandler(context_PostMapRequestHandler); 
} 

void context_PostMapRequestHandler(object sender, EventArgs e) 
{ 
    HttpContext context = ((HttpApplication)sender).Context; 
    Page page = HttpContext.Current.CurrentHandler as Page; 
} 

之後,你可以添加他們,你可以鉤在頁面事件並修改內容

+0

我想在Application_EndRequest()中將文本添加到文本中? – balu 2011-04-25 10:04:48

+0

這是行不通的 - 問題是沒有可靠的方式讓模塊知道是否已經創建了控制樹,視圖狀態已經被加載,後處理事件是否已經被處理等等(假設當前處理程序是一個頁面)。如果模塊必須掛鉤頁面事件,那麼它必須確保釋放這些事件處理程序!一般來說,基頁是更好的選擇,而不是通過http模塊來滿足這種要求! – VinayC 2011-04-25 10:18:27