﻿# 善用 HttpContext.Items 儲存短暫出現的資料

我們知道在 ASP.NET 的頁面中可以儲存資料的物件有好多個，有 Session 物件、Cache 物件、還可以在頁面中自己定義 Page 類別的欄位(Field)變數，但有個好用的物件鮮少有人知道，就是 [HttpContext](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.aspx "HttpContext").[Items](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.items.aspx "HttpContext.Items")，如果你希望在 HttpModule 與 HttpHandler 或 Page 的程式之間傳遞資料時，使用 [HttpContext](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.aspx "HttpContext").[Items](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.items.aspx "HttpContext.Items") 就太完美啦！

這個 [HttpContext](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.aspx "HttpContext").[Items](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.items.aspx "HttpContext.Items") 物件的生命週期很短，只會出現在這一個 HTTP Request 裡面而已，當頁面送給 User 之後，物件就會自動回收，所以如果僅僅是需要將在 HttpModule 中整理好的資料傳遞到頁面的話，就可以透過這個物件來做。

**相關連結**

-   The HttpContext Items Collection  
    [http://www.odetocode.com/Articles/111.aspx](http://www.odetocode.com/Articles/111.aspx)  
      
    
-   HttpContext..::.Items 屬性  
    [http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.items.aspx](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.items.aspx)  
      
    
-   HttpContext 類別  
    [http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.aspx](http://msdn2.microsoft.com/zh-tw/library/system.web.httpcontext.aspx)
