MemoryCache.AddOrGetExisting Yöntem

Tanım

Önbelleğe bir önbellek girdisi ekler.

Aşırı Yüklemeler

AddOrGetExisting(CacheItem, CacheItemPolicy)

Belirtilen CacheItem örneği kullanarak önbelleğe bir önbellek girdisi ekler ve girdinin nasıl çıkarılıp çıkarılana ilişkin ayrıntılar.

AddOrGetExisting(String, Object, DateTimeOffset, String)

Belirtilen anahtarı ve bir değeri ve mutlak süre sonu değerini kullanarak önbelleğe bir önbellek girdisi ekler.

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Belirtilen anahtarı ve değeri ve çıkarılma şekliyle ilgili belirtilen ayrıntıları kullanarak önbelleğe bir önbellek girdisi ekler.

Açıklamalar

AddOrGetExisting Yöntemi aşırı yüklemeleri, önbelleğe önbellek girdisi eklemek için kullanılır. Eşleşen anahtara sahip bir önbellek girişi yoksa, bu yöntemler yeni bir giriş ekler. Eşleşen anahtara sahip bir önbellek girdisi zaten varsa, var olan girişi döndürür.

AddOrGetExisting(CacheItem, CacheItemPolicy)

Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs

Belirtilen CacheItem örneği kullanarak önbelleğe bir önbellek girdisi ekler ve girdinin nasıl çıkarılıp çıkarılana ilişkin ayrıntılar.

public:
 override System::Runtime::Caching::CacheItem ^ AddOrGetExisting(System::Runtime::Caching::CacheItem ^ item, System::Runtime::Caching::CacheItemPolicy ^ policy);
public override System.Runtime.Caching.CacheItem AddOrGetExisting (System.Runtime.Caching.CacheItem item, System.Runtime.Caching.CacheItemPolicy policy);
override this.AddOrGetExisting : System.Runtime.Caching.CacheItem * System.Runtime.Caching.CacheItemPolicy -> System.Runtime.Caching.CacheItem
Public Overrides Function AddOrGetExisting (item As CacheItem, policy As CacheItemPolicy) As CacheItem

Parametreler

item
CacheItem

Eklenecek nesne.

policy
CacheItemPolicy

Önbellek girdisi için çıkarma ayrıntılarını içeren bir nesne. Bu nesne, çıkarma için basit bir mutlak süre sonu yerine daha fazla seçenek sağlar.

Döndürülenler

Aynı anahtara sahip bir önbellek girdisi varsa, mevcut önbellek girdisi; aksi takdirde , null.

Özel durumlar

Value özelliğidirnull.

Nesnenin hem mutlak hem de kayan CacheItemPolicy süre sonu değerleri ve NoSlidingExpiration alanlarının varsayılanları InfiniteAbsoluteExpiration dışında değerlere ayarlanır. Sınıfı, MemoryCache mutlak süre sonu ve kayan süre sonu birleşimine göre süre sonu ilkesi ayarlayamaz. Örneği kullandığınızda MemoryCache yalnızca bir süre sonu ayarı açıkça ayarlanabilir. Diğer süre sonu ayarı alan veya NoSlidingExpiration alan olarak InfiniteAbsoluteExpiration ayarlanmalıdır.

SlidingExpiration özelliği değerinden küçük Zerobir değere ayarlanır.

-veya-

SlidingExpiration özelliği bir yıldan büyük bir değere ayarlanır.

-veya-

Priority özelliği, numaralandırmanın CacheItemPriority bir değeri değildir.

Açıklamalar

item parametresi, anahtarı ve yöntemi tarafından kullanılan değeri sağlar. Önbellekte parametresinin anahtarıyla aynı anahtara item sahip bir önbellek girişi varsa, yöntem mevcut girişi örnek CacheItem olarak döndürür. Mevcut bir önbellek girdisi yoksa, yöntemi parametresi tarafından item sağlanan anahtarı ve değeri kullanarak ve tarafından policybelirtilen çıkarma ayrıntılarıyla yeni bir tane oluşturur.

Uyarı

Add ve AddOrGetExisting yöntemi aşırı yüklemeleri özelliğini desteklemezUpdateCallback. Bu nedenle, bir önbellek girdisinin UpdateCallback özelliğini ayarlamak için bunun yerine yöntem aşırı yüklemelerini kullanın Set .

Şunlara uygulanır

AddOrGetExisting(String, Object, DateTimeOffset, String)

Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs

Belirtilen anahtarı ve bir değeri ve mutlak süre sonu değerini kullanarak önbelleğe bir önbellek girdisi ekler.

public override object AddOrGetExisting (string key, object value, DateTimeOffset absoluteExpiration, string regionName = default);
override this.AddOrGetExisting : string * obj * DateTimeOffset * string -> obj
Public Overrides Function AddOrGetExisting (key As String, value As Object, absoluteExpiration As DateTimeOffset, Optional regionName As String = Nothing) As Object

Parametreler

key
String

Eklenecek önbellek girdisi için benzersiz bir tanımlayıcı.

value
Object

Önbellek girdisinin verileri.

absoluteExpiration
DateTimeOffset

Önbellek girişinin süresinin dolacağı sabit tarih ve saat.

regionName
String

Önbellekte bir önbellek girişinin eklenebileceği adlandırılmış bölge. Bu parametre için değer geçirmeyin. Sınıfı bölgeleri uygulamadığından MemoryCache bu parametre null varsayılan olarak kullanılır.

Döndürülenler

Aynı anahtara sahip bir önbellek girdisi varsa, mevcut önbellek girdisi; aksi takdirde , null.

Özel durumlar

value değil null.

regionName değil null.

Nesnenin hem mutlak hem de kayan CacheItemPolicy süre sonu değerleri ve NoSlidingExpiration alanlarının varsayılanları InfiniteAbsoluteExpiration dışında değerlere ayarlanır. Sınıfı, MemoryCache mutlak süre sonu ve kayan süre sonu birleşimine göre süre sonu ilkesi ayarlayamaz. Örneği kullandığınızda MemoryCache yalnızca bir süre sonu ayarı açıkça ayarlanabilir. Diğer süre sonu ayarı veya olarak InfiniteAbsoluteExpiration ayarlanmalıdır NoSlidingExpiration

SlidingExpiration özelliği değerinden küçük Zerobir değere ayarlanır.

-veya-

SlidingExpiration özelliği bir yıldan büyük bir değere ayarlanır.

-veya-

Priority özelliği, numaralandırmanın CacheItemPriority bir değeri değildir.

Açıklamalar

Önbelleğin anahtarı parametresiyle key eşleşen bir önbellek girdisi yoksa, yeni bir önbellek girdisi oluşturulur ve MemoryCache.AddOrGetExisting yöntem aşırı yüklemesi döndürür null. Eşleşen bir önbellek girdisi varsa, var olan giriş döndürülür.

Uyarı

Add ve AddOrGetExisting yöntemi aşırı yüklemeleri özelliğini desteklemezUpdateCallback. Bu nedenle, bir önbellek girdisinin UpdateCallback özelliğini ayarlamak için bunun yerine yöntem aşırı yüklemelerini kullanın Set .

Şunlara uygulanır

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs
Kaynak:
MemoryCache.cs

Belirtilen anahtarı ve değeri ve çıkarılma şekliyle ilgili belirtilen ayrıntıları kullanarak önbelleğe bir önbellek girdisi ekler.

public override object AddOrGetExisting (string key, object value, System.Runtime.Caching.CacheItemPolicy policy, string regionName = default);
override this.AddOrGetExisting : string * obj * System.Runtime.Caching.CacheItemPolicy * string -> obj
Public Overrides Function AddOrGetExisting (key As String, value As Object, policy As CacheItemPolicy, Optional regionName As String = Nothing) As Object

Parametreler

key
String

Eklenecek veya alınacak önbellek girdisinin benzersiz tanımlayıcısı.

value
Object

Önbellek girdisinin verileri.

policy
CacheItemPolicy

Önbellek girdisi için çıkarma ayrıntılarını içeren bir nesne. Bu nesne, çıkarma için basit bir mutlak süre sonu yerine daha fazla seçenek sağlar.

regionName
String

Önbellekte bir önbellek girişinin eklenebileceği adlandırılmış bölge. Bu parametre için değer geçirmeyin. Sınıfı bölgeleri uygulamadığından MemoryCache bu parametre varsayılan olarak parametresidirnull.

Döndürülenler

Eşleşen bir önbellek girdisi zaten varsa, bir önbellek girdisi; aksi takdirde , null.

Özel durumlar

value, null değeridir.

nesnesinin hem mutlak hem de kayan CacheItemPolicy süre sonu değerleri ve NoSlidingExpirationvarsayılanları InfiniteAbsoluteExpiration dışındaki değerlere ayarlanır. sınıfı, MemoryCache hem mutlak hem de kayan süre sonu birleşimine dayalı süre sonu ilkesi ayarlayamaz. sınıfını kullandığınızda MemoryCache yalnızca bir süre sonu ayarı açıkça ayarlanabilir. Diğer ayar veya NoSlidingExpirationolarak ayarlanmalıdırInfiniteAbsoluteExpiration.

-veya-

hem kaldırma geri çağırması hem de güncelleştirme geri çağırması için CacheItemPolicybelirtilmiştir. Yalnızca MemoryCache önbellek girdisi başına tek bir geri çağırma türü kullanmayı destekler.

SlidingExpiration özelliği değerinden küçük Zerobir değere ayarlanır.

-veya-

SlidingExpiration değeri bir yıldan büyük bir değere ayarlanmıştır.

-veya-

Priority özelliği, numaralandırmanın CacheItemPriority bir değeri değildir.

Açıklamalar

Uyarı

Add ve AddOrGetExisting yöntemi aşırı yüklemeleri özelliğini desteklemezUpdateCallback. Bu nedenle, bir önbellek girdisinin UpdateCallback özelliğini ayarlamak için bunun yerine yöntem aşırı yüklemelerini kullanın Set .

Şunlara uygulanır