2010-11-24 19 views
5

我想我知道答案,但我無法在文檔或文章中的任何地方找到確切的yes或no。ASP.Net CacheDependency對象問題

使用.Net 3.5 ASP.Net緩存,如果您使CacheDependency傳遞了cacheKeys的一個字符串[],那麼如果尚未傳遞cacheKeys,它們是否會插入緩存中插入的依賴項存在?

CacheDependency dependency = 
    new CacheDependency(null, new string[] { "abc", "def", "ghi"}); 
HttpRuntime.Cache.Insert("123", "xxx", dependency); 

因此,當緩存項「123」被插入時,如果緩存中還沒有關鍵字「def」,那該怎麼辦?它會被創建嗎?

如果沒有,那麼有沒有辦法讓CacheDependency對象,並找出它創建的鍵,所以我可以循環通過它們並根據需要添加每個?

基本上,我試圖讓一個CacheDependency對象被傳遞到我自定義的CacheManager對象方法中,而不是我現在需要的字符串[]數組。感謝您的任何幫助,您可以提供。

+0

想我在錯誤的時間詢問過這個問題。在美國感恩節前一天詢問可能不會在我的問題上留下太多的眼睛。 – Billyhole 2010-11-26 22:52:14

回答

5

答案是否定的。尚未處於緩存中的cacheDependency的cacheKeys不會插入插入使用依賴項的項目的緩存中。

事實上,插入依賴關係的實際項目甚至不會將其放入緩存中,因爲它的依賴關係尚不存在於緩存中。