Cache.Insert 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將物品插入物件 Cache 中。 使用此方法的其中一個版本來覆蓋一個參數相同且已Cache存在key的項目。
多載
| 名稱 | Description |
|---|---|
| Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemPriority, CacheItemRemovedCallback) |
將物件插入 Cache 物件,並附有相依關係、到期與優先權政策,並有一個代理,你可以用來通知應用程式中插入的項目何時從 |
| Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemUpdateCallback) |
它會將物件插入 Cache 物件,連同相依關係、到期政策,以及一個代理檔,讓你在項目從快取移除前通知應用程式。 |
| Insert(String, Object, CacheDependency) |
插入一個具有檔案或金鑰相依關係的物件。Cache |
| Insert(String, Object) |
使用列舉提供的Cache預設值,將一個項目插入CacheItemPriority物件中,並使用快取鍵來參考其位置。 |
| Insert(String, Object, CacheDependency, DateTime, TimeSpan) |
插入一個物件,並 Cache 帶有相依關係與到期政策。 |
Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemPriority, CacheItemRemovedCallback)
將物件插入 Cache 物件,並附有相依關係、到期與優先權政策,並有一個代理,你可以用來通知應用程式中插入的項目何時從 Cache.
public:
void Insert(System::String ^ key, System::Object ^ value, System::Web::Caching::CacheDependency ^ dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System::Web::Caching::CacheItemPriority priority, System::Web::Caching::CacheItemRemovedCallback ^ onRemoveCallback);
public void Insert(string key, object value, System.Web.Caching.CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System.Web.Caching.CacheItemPriority priority, System.Web.Caching.CacheItemRemovedCallback onRemoveCallback);
member this.Insert : string * obj * System.Web.Caching.CacheDependency * DateTime * TimeSpan * System.Web.Caching.CacheItemPriority * System.Web.Caching.CacheItemRemovedCallback -> unit
Public Sub Insert (key As String, value As Object, dependencies As CacheDependency, absoluteExpiration As DateTime, slidingExpiration As TimeSpan, priority As CacheItemPriority, onRemoveCallback As CacheItemRemovedCallback)
參數
- key
- String
用來參考物件的快取金鑰。
- value
- Object
要插入快取的物件。
- dependencies
- CacheDependency
該項目的檔案或快取金鑰相依關係。 當任何相依性改變時,該物件即失效並從快取中移除。 若不存在依賴關係,則此參數包含 null。
- absoluteExpiration
- DateTime
插入物件到期並從快取中移除的時間點。 為避免當地時間可能出現的問題,例如標準時間改為夏令時間,請使用 UtcNow 而非 Now 此參數值。 如果你使用絕對到期 slidingExpiration ,參數必須是 NoSlidingExpiration。
- slidingExpiration
- TimeSpan
插入物件最後被存取的時間與該物件過期的時間之間的間隔。 如果這個值等於 20 分鐘,該物件會在最後一次存取後 20 分鐘內失效並從快取中移除。 如果你使用滑動到期 absoluteExpiration ,參數必須是 NoAbsoluteExpiration。
- priority
- CacheItemPriority
物件相對於快取中其他項目的成本,依列 CacheItemPriority 舉方式表示。 快取在驅逐物件時會使用此值;成本較低的物件會先從快取中移除,優先於成本較高的物件。
- onRemoveCallback
- CacheItemRemovedCallback
如果提供代理,當物件從快取移除時會被呼叫。 你可以用這個方法通知應用程式當其物件從快取中被刪除時。
例外狀況
key或value參數為 null。
你設定 slidingExpiration 參數為少 TimeSpan.Zero 於或等同於超過一年的年份。
absoluteExpiration和slidingExpiration參數都設定在你想加入Cache的項目中。
範例
以下範例示範如何在將項目插入 Cache 應用程式物件時,將其指定為高優先權。
Note
關於如何與 CacheItemRemovedCallback 代理使用此方法的更多資訊,請參閱 「如何:當某項目從快取中移除時通知應用程式」。
Cache.Insert("DSN", connectionString, null, DateTime.Now.AddMinutes(2), TimeSpan.Zero, CacheItemPriority.High, onRemove);
Cache.Insert("DSN", connectionString, Nothing, DateTime.Now.AddMinutes(2), TimeSpan.Zero, CacheItemPriority.High, onRemove)
備註
此方法會覆蓋一個具有相同Cache參數的現有key項目。
你無法同時設定 absoluteExpiration 和 slidingExpiration 參數。 如果你打算快取項目在特定時間到期,你就把參數設 absoluteExpiration 為特定時間, slidingExpiration 參數設為 NoSlidingExpiration。
如果你打算快取項目在上次存取後過期一段時間後,你就將參數設slidingExpiration為過期區間,參數absoluteExpirationNoAbsoluteExpiration設為 。
另請參閱
適用於
Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemUpdateCallback)
它會將物件插入 Cache 物件,連同相依關係、到期政策,以及一個代理檔,讓你在項目從快取移除前通知應用程式。
public:
void Insert(System::String ^ key, System::Object ^ value, System::Web::Caching::CacheDependency ^ dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System::Web::Caching::CacheItemUpdateCallback ^ onUpdateCallback);
public void Insert(string key, object value, System.Web.Caching.CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System.Web.Caching.CacheItemUpdateCallback onUpdateCallback);
member this.Insert : string * obj * System.Web.Caching.CacheDependency * DateTime * TimeSpan * System.Web.Caching.CacheItemUpdateCallback -> unit
Public Sub Insert (key As String, value As Object, dependencies As CacheDependency, absoluteExpiration As DateTime, slidingExpiration As TimeSpan, onUpdateCallback As CacheItemUpdateCallback)
參數
- key
- String
用來參考物件的快取金鑰。
- value
- Object
要插入快取的物件。
- dependencies
- CacheDependency
該項目的檔案或快取金鑰相依關係。 當任何相依性改變時,該物件即失效並從快取中移除。 若不存在依賴關係,則此參數包含 null。
- absoluteExpiration
- DateTime
插入物件到期並從快取中移除的時間點。 為避免當地時間可能出現的問題,例如標準時間改為夏令時間,請使用此UtcNowNow參數值 代替。 若使用絕對失效 slidingExpiration ,參數必須設為 NoSlidingExpiration。
- slidingExpiration
- TimeSpan
快取物件最後被存取的時間點與該物件過期的時間之間的間隔。 如果這個值等於 20 分鐘,該物件會在最後一次存取後 20 分鐘內失效並從快取中移除。 如果你使用滑動到期, absoluteExpiration 參數必須設為 NoAbsoluteExpiration。
- onUpdateCallback
- CacheItemUpdateCallback
一個代理檔,會在物件從快取中移除前被呼叫。 你可以用這個方法更新快取項目,確保它不會從快取中移除。
例外狀況
參數 key, , , 為 valueonUpdateCallbacknull。
你設定 slidingExpiration 參數為少 TimeSpan.Zero 於或等同於超過一年的年份。
absoluteExpiration和slidingExpiration參數都設定在你想加入Cache的項目中。
-或-
參數dependencies為 null,absoluteExpiration參數設為 NoAbsoluteExpiration,參數為 slidingExpiration。NoSlidingExpiration
備註
此 Insert 方法允許你在快取中插入新項目,並提供一個代理,該代理在該項目從快取中移除前會被呼叫。 在代理中,你可以更新快取項目,從而防止它從快取中被移除。
此方法會覆蓋一個具有相同Cache參數的現有key項目。
你無法同時設定 absoluteExpiration 和 slidingExpiration 參數。 如果你打算快取項目在特定時間到期,你就把參數設 absoluteExpiration 為特定時間, slidingExpiration 參數設為 NoSlidingExpiration。
如果你打算快取項目在一段設定時間後過期,你就把參數設 slidingExpiration 為過期間隔,參數 absoluteExpiration 設為 NoAbsoluteExpiration。
另請參閱
適用於
Insert(String, Object, CacheDependency)
插入一個具有檔案或金鑰相依關係的物件。Cache
public:
void Insert(System::String ^ key, System::Object ^ value, System::Web::Caching::CacheDependency ^ dependencies);
public void Insert(string key, object value, System.Web.Caching.CacheDependency dependencies);
member this.Insert : string * obj * System.Web.Caching.CacheDependency -> unit
Public Sub Insert (key As String, value As Object, dependencies As CacheDependency)
參數
- key
- String
用來識別該項目的快取金鑰。
- value
- Object
要插入快取的物件。
- dependencies
- CacheDependency
插入物件的檔案或快取鍵相依關係。 當任何相依性改變時,該物件即失效並從快取中移除。 若不存在依賴關係,則此參數包含 null。
例外狀況
key或value參數為 null。
範例
以下範例示範如何將項目插入應用程式快取,且快取依賴於 XML 設定檔。
Cache.Insert("DSN", connectionString, new CacheDependency(Server.MapPath("myconfig.xml")));
Cache.Insert("DSN", connectionString, New CacheDependency(Server.MapPath("myconfig.xml")))
備註
此方法會覆寫一個與參數相符 key 的快取項目。 利用此方法過載 Insert 加入快取的物件,優先權為 Default,滑動到期值為 NoSlidingExpiration,絕對到期值為 NoAbsoluteExpiration。
另請參閱
適用於
Insert(String, Object)
使用列舉提供的Cache預設值,將一個項目插入CacheItemPriority物件中,並使用快取鍵來參考其位置。
public:
void Insert(System::String ^ key, System::Object ^ value);
public void Insert(string key, object value);
member this.Insert : string * obj -> unit
Public Sub Insert (key As String, value As Object)
參數
- key
- String
用來參考該項目的快取金鑰。
- value
- Object
要插入快取的物件。
例外狀況
key或value參數為 null。
範例
以下範例示範如何將項目插入應用程式的快取中。
Cache.Insert("DSN", connectionString);
Cache.Insert("DSN", connectionString)
備註
此方法會覆寫一個與參數相符 key 的快取項目。 使用此方法的超載 Insert 加入快取的物件,插入時不依賴檔案或快取,優先順序為 Default,滑動到期值為 NoSlidingExpiration,絕對到期值為 NoAbsoluteExpiration。
另請參閱
適用於
Insert(String, Object, CacheDependency, DateTime, TimeSpan)
插入一個物件,並 Cache 帶有相依關係與到期政策。
public:
void Insert(System::String ^ key, System::Object ^ value, System::Web::Caching::CacheDependency ^ dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration);
public void Insert(string key, object value, System.Web.Caching.CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration);
member this.Insert : string * obj * System.Web.Caching.CacheDependency * DateTime * TimeSpan -> unit
Public Sub Insert (key As String, value As Object, dependencies As CacheDependency, absoluteExpiration As DateTime, slidingExpiration As TimeSpan)
參數
- key
- String
用來參考物件的快取金鑰。
- value
- Object
要插入快取的物件。
- dependencies
- CacheDependency
插入物件的檔案或快取鍵相依關係。 當任何相依性改變時,該物件即失效並從快取中移除。 若不存在依賴關係,則此參數包含 null。
- absoluteExpiration
- DateTime
插入物件到期並從快取中移除的時間點。 為避免當地時間可能出現的問題,例如標準時間改為夏令時間,請使用 UtcNow 而非 Now 此參數值。 如果你使用絕對到期 slidingExpiration ,參數必須是 NoSlidingExpiration。
- slidingExpiration
- TimeSpan
插入物件最後被存取的時間點與該物件到期時間之間的間隔。 如果這個值等於 20 分鐘,該物件會在最後一次存取後 20 分鐘內失效並從快取中移除。 如果你使用滑動到期 absoluteExpiration ,參數必須是 NoAbsoluteExpiration。
例外狀況
key或value參數為 null。
你設定 slidingExpiration 參數為少 TimeSpan.Zero 於或等同於超過一年的年份。
absoluteExpiration和slidingExpiration參數都設定在你想加入Cache的項目中。
範例
以下範例示範如何將項目插入應用程式快取且有絕對到期。
Note
由於這種形式的 Insert 方法支援快取相依,若項目沒有相依,必須在逗號分隔參數列表中宣告 dependency 參數為 null(Nothing Visual Basic)。
Cache.Insert("DSN", connectionString, null, DateTime.Now.AddMinutes(2), Cache.NoSlidingExpiration);
Cache.Insert("DSN", connectionString, Nothing, DateTime.Now.AddMinutes(2), Cache.NoSlidingExpiration)
以下範例示範如何將物品插入帶有滑動過期的快取。
Cache.Insert("DSN", connectionString, null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(10));
Cache.Insert("DSN", connectionString, Nothing, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(10))
備註
此方法會覆蓋一個具有相同Cache參數的現有key項目。
若 slidingExpiration 參數設為 NoSlidingExpiration,滑動過期將被禁用。 如果你將參數設 slidingExpiration 為大於 Zero,則 absoluteExpiration 參數設為 Now 加上該參數中包含的 slidingExpiration 值。 如果在參數指定 absoluteExpiration 時間內就向快取請求該項目,該項目會再次被放入快取,並 absoluteExpiration 再次設定為 DateTime.Now 參數中包含的 slidingExpiration 值加。 若在參數日期 absoluteExpiration 前未請求該項目,該項目將從快取中移除。 使用此插入方法的超載加入快取的項目,優先權為 Default。