簡體   English   中英

禁用ASP.net緩存

[英]Disable ASP.net Cache

有沒有辦法在選定的頁面上禁用asp.net緩存。 如果可以從web.config完成這將是很好的。

<!-- In the page itself -->
<%@ OutputCache Location="None" %>

要么

// In the code-behind
Response.Cache.SetCacheability(HttpCacheability.NoCache)

不幸的是,它必須在頁面內完成。 從web.config做起來沒有簡單的方法。 有關更多信息,請查看:

MSDN - 設置頁面的可緩存性

是的,如果您願意創建自己的配置部分,可以: http//msdn.microsoft.com/en-us/library/2tw134k3.aspx

在您的配置部分中添加類似的內容,

<cachingConfig>
    <path>/Navigation/Menu.aspx</path>
    <path>/Target/Console.aspx</path>
    <path>/Target/Charting/Chart.aspx</path>
</cachingConfig>

如果您願意,可以添加更多屬性,例如持續時間。

然后,在頁面的page_Init方法中,檢查此配置部分並在適當的位置調用以下內容:

Response.Cache.SetCacheability(HttpCacheability.NoCache)

編輯:提示:將init代碼放在頁面繼承的基類中,以便它只是一個位置。

Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetNoStore();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM