Classe CacheItem
NCache utilizza una struttura "chiave" e "valore" per memorizzare gli oggetti nella cache. Quando un oggetto viene aggiunto nella cache, viene archiviato come valore e metadati rispetto alla chiave specificata. Questa combinazione di valore e metadati è definita come CacheItem in NCache. Il valore degli oggetti archiviati nella cache può variare da semplici tipi di stringa a oggetti complessi.
Classe CacheItem in NCache ha proprietà che consentono di impostare i metadati per l'elemento da aggiungere nella cache in modo organizzato. Negli scenari in cui è necessario impostare più attributi durante l'aggiunta di un elemento nella cache, è preferibile utilizzare CacheItem. L'uso dell'oggetto classe CacheItem rimuove il problema dell'uso di più sovraccarichi API sull'aggiunta/aggiornamento dei dati nella cache. Puoi utilizzare facilmente l'overload dell'API di base e aggiungere/aggiornare facilmente i dati utilizzando CacheItem.
Eredità
montaggio: Alachisoft.NCache.Client.dll
Sintassi
public class CacheItem : ICloneable
Esempi
L'esempio seguente mostra come creare un'istanza della classe CacheItem e aggiungerla al file ICache
ICache cache = CacheManager.GetCache("demoCache");
Product product = new Product();
CacheItem item = new CacheItem(product);
item.Expiration = new Expiration(ExpirationType.Sliding, TimeSpan.FromMinutes(5));
item.Priority = CacheItemPriority.High;
cache.Add("productKey", item);
Costruttori
Nome | Descrizione |
---|---|
CacheItem(Oggetto) | Inizializza la nuova istanza dell'elemento della cache. |
Properties
Nome | Descrizione |
---|---|
Tempo di creazione | Specifica quando l'elemento è stato aggiunto alla cache per la prima volta. |
Dipendenza | Il file o le dipendenze della chiave di cache per l'elemento. Quando una dipendenza cambia, l'oggetto diventa non valido e viene rimosso dalla cache. Se non sono presenti dipendenze, questa proprietà contiene un riferimento null. |
Scadenza | Questa proprietà imposta Scadenza per l'elemento della cache. Dopo il periodo di tempo specificato,
l'elemento scade dalla cache.
|
Gruppo | I gruppi ti aiutano a creare una partizione logica dei dati memorizzati nella cache per un facile recupero. Le informazioni sul gruppo possono essere aggiunte con un elemento impostando la proprietà Group di CacheItem. Ciò riduce la complicazione dell'utilizzo degli sovraccarichi API per l'aggiunta di gruppi al momento dell'operazione aggiunta/aggiornamento di elementi nella cache. |
Ultima modifica ora | Questa proprietà di CacheItem memorizza l'ora dell'ultima modifica dell'elemento della cache. Se un elemento viene aggiornato nella cache, viene aggiornata anche l'ora dell'ultima modifica. L'ora dell'ultima modifica viene controllata quando viene attivato lo sfratto basato su Usati meno di recente. |
NamedTag | Con i Named Tag, l'utente è in grado di memorizzare informazioni aggiuntive (di qualsiasi tipo) necessarie interrogare l'oggetto memorizzato come stringa. Gli utenti sono tenuti a fornire l'elenco dei tag denominati, ciascuno con due parametri, "key" (nome di un tag) come stringa e "value" (valore assegnato) come qualsiasi tipo primitivo. NCache quindi ti consente di cercare i tuoi oggetti attraverso questi tag denominati. I tag con nome possono essere specificati usando questa proprietà di CacheItem. |
Priorità | Quando la cache dell'applicazione è piena o ha poca memoria, la cache viene eliminata selettivamente elementi per liberare la memoria del sistema. Quando un elemento viene aggiunto alla cache, puoi assegnargli una priorità relativa rispetto agli altri elementi archiviati nella cache utilizzando questa proprietà. Ciò elimina il problema dell'utilizzo degli sovraccarichi API per l'impostazione della priorità. Elementi assegnati più in alto è meno probabile che i valori di priorità vengano eliminati dalla cache quando il server elabora un file di grandi dimensioni numero di richieste, mentre gli elementi a cui è stato assegnato un valore di priorità inferiore hanno maggiori probabilità di essere eliminati. |
Opzioni di risincronizzazione | Questa proprietà viene utilizzata per definire il Opzioni di risincronizzazione per l'elemento della cache. |
SyncDependency | Sincronizza due cache separate in modo che un elemento aggiornato o rimosso da una cache possa farlo hanno lo stesso effetto sulla cache sincronizzata. Per la dipendenza dalla sincronizzazione della cache, un elemento deve esistere nella cache prima che possa essere aggiunto un altro elemento con una dipendenza da esso. Questa proprietà consente di impostare la dipendenza di sincronizzazione della cache con un elemento della cache. |
tag | Utilizzando i tag, puoi associare parole chiave agli elementi della cache. Puoi contrassegnare i tuoi dati con tag, che fungono da identificatori per gli elementi della cache. Utilizzando questa proprietà, puoi impostare facilmente i tag per un elemento della cache. |
Versione | NCache utilizza il controllo delle versioni degli elementi della cache. CacheItemVersion è una proprietà associata a ogni elemento della cache. È fondamentalmente un valore numerico utilizzato per rappresentare la versione dell'elemento memorizzato nella cache che cambia ad ogni aggiornamento di un elemento. Questa proprietà consente di monitorare se si è verificata o meno una modifica in un articolo. Quando recuperi un elemento dalla cache, recuperi anche la sua versione corrente dalla cache. |
Metodi
Nome | Descrizione |
---|---|
Clone() | Crea una copia superficiale dell'elemento della cache. |
Ottieni valore () | Restituisce il valore archiviato in CacheItem. |
SetCacheDataNotification(CacheDataNotificationCallback, EventType, EventDataFilter) | Puoi usarlo per notificare alle applicazioni quando i loro oggetti vengono aggiornati o rimossi nella cache. È possibile registrare le richiamate Tipo di evento per la chiave in cui sono inseriti gli elementi. Le richiamate vengono sovrascritte per lo stesso Tipo di evento, se chiamato di nuovo. CacheDataNotificationCallback definisce il callback da utilizzare per le notifiche. EventType descrive il tipo di evento che desideri registrare. Se tale evento viene attivato, verrà ricevuta una notifica. |
ImpostaValore(Oggetto) | Imposta il valore dell'elemento della cache. |