2017-04-03 3 views
0

ich meine Datenbank mit zwischengespeichert haben folgenden Code für Redis Operationen:Speichert die GetDatabase() - Methode von Redis alle Datenbanktabellen?

public bool InitialiseCache() 
    { 
     try 
     { 
      _cache = Connection.GetDatabase();     
      return true; 
     } 
     catch (Exception ex) 
     { 
      return false; 
     } 
    } 

habe ich versucht, zu debuggen und Vorschau Wert von _cache aber nicht im Cache gespeicherten Daten (Tabellen) angezeigt werden soll. Ich wollte bestätigen, dass GetDatabase() Methode alle Tabellen zwischenspeichert. Gibt es eine Möglichkeit, alle Redis-Schlüssel oder Werte in der Vorschau anzuzeigen?

Antwort

1

Kurze Antwort:

Nein, Redis der GetDatabase() -Methode NICHT Caches alle Datenbanktabellen

Lange Antwort TUT:

Wie Per StackExchange.Redis on Github:

eine redis Datenbank

Zugriff auf eine redis Datenbank ist so einfach wie:

IDatabase db = redis.GetDatabase(); 

Das Objekt von GetDatabase zurück eine billige Pass-thru-Objekt ist, und muss nicht gespeichert werden. Beachten Sie, dass redis mehrere Datenbanken unterstützt (obwohl dies auf "Cluster" nicht unterstützt wird); Dies kann optional im Aufruf von GetDatabase angegeben werden. Außerdem, wenn Sie Plan Verwendung des asynchronen API zu machen und Sie benötigen die Task.AsyncState einen Wert zu haben, kann dies auch angegeben werden:

int databaseNumber = ... 
object asyncState = ... 
IDatabase db = redis.GetDatabase(databaseNumber, asyncState); 

Sobald Sie die IDatabase haben, es ist einfach ein Fall der Verwendung die redis API. Beachten Sie, dass alle Methoden sowohl synchrone als auch asynchrone Implementierungen haben. Im Einklang mit Namensführung von Microsoft, die asynchronen Methoden enden ... Async (...) und sind voll erwarten-able usw.

Verwandte Themen