Share via


Cache.Add Metode

Definisi

Menambahkan item yang ditentukan ke Cache objek dengan dependensi, kebijakan kedaluwarsa dan prioritas, dan delegasi yang dapat Anda gunakan untuk memberi tahu aplikasi Anda saat item yang disisipkan dihapus dari Cache.

public:
 System::Object ^ Add(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 object Add (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.Add : string * obj * System.Web.Caching.CacheDependency * DateTime * TimeSpan * System.Web.Caching.CacheItemPriority * System.Web.Caching.CacheItemRemovedCallback -> obj
Public Function Add (key As String, value As Object, dependencies As CacheDependency, absoluteExpiration As DateTime, slidingExpiration As TimeSpan, priority As CacheItemPriority, onRemoveCallback As CacheItemRemovedCallback) As Object

Parameter

key
String

Kunci cache yang digunakan untuk mereferensikan item.

value
Object

Item yang akan ditambahkan ke cache.

dependencies
CacheDependency

File atau dependensi kunci cache untuk item. Ketika setiap dependensi berubah, objek menjadi tidak valid dan dihapus dari cache. Jika tidak ada dependensi, parameter ini berisi null.

absoluteExpiration
DateTime

Waktu saat objek yang ditambahkan kedaluwarsa dan dihapus dari cache. Jika Anda menggunakan kedaluwarsa absoluteExpiration geser, parameter harus NoAbsoluteExpiration.

slidingExpiration
TimeSpan

Interval antara waktu objek yang ditambahkan terakhir diakses dan waktu kedaluwarsa objek tersebut. Jika nilai ini setara dengan 20 menit, objek akan kedaluwarsa dan dihapus dari cache 20 menit setelah terakhir diakses. Jika Anda menggunakan kedaluwarsa slidingExpiration absolut, parameter harus NoSlidingExpiration.

priority
CacheItemPriority

Biaya relatif objek, seperti yang dinyatakan oleh CacheItemPriority enumerasi. Cache menggunakan nilai ini saat mengusir objek; objek dengan biaya yang lebih rendah dihapus dari cache sebelum objek dengan biaya yang lebih tinggi.

onRemoveCallback
CacheItemRemovedCallback

Delegasi yang, jika disediakan, dipanggil saat objek dihapus dari cache. Anda dapat menggunakan ini untuk memberi tahu aplikasi ketika objeknya dihapus dari cache.

Mengembalikan

Objek yang mewakili item yang ditambahkan jika item sebelumnya disimpan dalam cache; jika tidak, null.

Pengecualian

Parameter key atau value diatur ke null.

Parameter slidingExpiration diatur ke kurang dari TimeSpan.Zero atau lebih dari satu tahun.

Parameter absoluteExpiration dan slidingExpiration keduanya diatur untuk item yang anda coba tambahkan ke Cache.

Contoh

Contoh berikut membuat AddItemToCache metode . Ketika metode ini dipanggil, metode ini mengatur itemRemoved properti ke false dan mendaftarkan metode dengan instans onRemoveCacheItemRemovedCallback baru delegasi. Tanda tangan delegasi digunakan dalam RemovedCallback metode . Metode ini AddItemToCache kemudian memeriksa nilai yang terkait dengan Key1 kunci dalam cache. Jika nilainya adalah null, Add metode menempatkan item dalam cache dengan kunci Key1, nilai Value 1, kedaluwarsa absolut 60 detik, dan prioritas cache tinggi. Ini juga menggunakan onRemove metode sebagai argumen. Ini memungkinkan RemovedCallback metode untuk dipanggil ketika item ini dihapus dari cache.

Catatan

Untuk contoh cara menggunakan CacheDependency kelas dan CacheItemRemovedCallback delegasi, lihat Penembolokan Data Aplikasi.

public void AddItemToCache(Object sender, EventArgs e) {
    itemRemoved = false;

    onRemove = new CacheItemRemovedCallback(this.RemovedCallback);

    if (Cache["Key1"] == null)
      Cache.Add("Key1", "Value 1", null, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, CacheItemPriority.High, onRemove);
}
Public Sub AddItemToCache(sender As Object, e As EventArgs)
    itemRemoved = false

    onRemove = New CacheItemRemovedCallback(AddressOf Me.RemovedCallback)

    If (IsNothing(Cache("Key1"))) Then
      Cache.Add("Key1", "Value 1", Nothing, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, CacheItemPriority.High, onRemove)
    End If
End Sub

Keterangan

Panggilan ke metode ini akan gagal secara diam-diam Cachejika item dengan parameter yang sama key sudah disimpan di . Untuk menimpa item yang ada Cache menggunakan parameter yang sama key , gunakan Insert metode .

Anda tidak dapat mengatur absoluteExpiration parameter dan slidingExpiration . Jika Anda ingin item cache kedaluwarsa pada waktu tertentu, Anda mengatur absoluteExpiration parameter ke waktu tertentu, dan slidingExpiration parameter ke NoSlidingExpiration.

Jika Anda ingin item cache kedaluwarsa setelah beberapa waktu berlalu sejak item terakhir diakses, Anda mengatur slidingExpiration parameter ke interval kedaluwarsa, dan absoluteExpiration parameter ke NoAbsoluteExpiration.

Berlaku untuk

Lihat juga