Domanda

Sono alla ricerca RavenDB per l'utilizzo in un sistema (per lo più come una cache di valori-chiave persistente) e necessità di sapere quali sono i limiti dei dati effettivi che possono essere memorizzati.

La documentazione "L'unico requisito è che una stringa un'entità radice proprietà Id", tuttavia tutti i campioni e tutorial sto vedendo unico negozio semplice stringa, int, decimale, i tipi di dati BOOL.

E 'possibile memorizzare questo oggetto?

public class StorableObject {
   public string Id {get;set;}
   public object ValueObject {get;set;}
}

Utilizzando questo codice (sudo)?

// I just copy and pasted this from a random blog post -- an example to show a complex object with a lot of hierarchy, methods, properties, etc.
string boundary = Guid.NewGuid().ToString();
HttpWebRequest request = HttpWebRequest.Create("http://twitpic.com/api/uploadAndPost")
    as HttpWebRequest;
request.Method = "POST";
request.ContentType = string.Format("multipart/form-data; boundary={0}", boundary);
request.PreAuthenticate = true;

var objectToStore = new StorableObject { ValueObject = request }; 
session.Store(objectToStore);
session.SaveChanges();

e farlo ritornare come questo:

var storedObject = session.Load<StorableObject>("objects/123456789");
var request = (HttpWebRequest) storedObject.ValueObject;

Grazie per il feedback, vi prego di scusare il mio esempio forzato, è stato il modo più semplice potrei descrivere quello che sto cercando di fare a meno di approfondire un po 'di conoscenza di dominio / modelli.

Kyle

È stato utile?

Soluzione

Tutti gli oggetti in Raven vengono memorizzate come JSON e sono serialize utilizza Json.NET . Quindi, fintanto che che può puntate il vostro tipo che funzionerà.

Altri suggerimenti

RavenDB può essere utilizzato come un negozio chiave / valore.

Ma il suo valore è sapere che tipo che hai memorizzato to back pull. 'Oggetto' non è utile, ma ancora possibile.

Si noti inoltre che se il valore è enorme - come in megabyte, del suo meglio per utilizzare l'API Allegati: http://ravendb.net/docs/2.5/client-api/attachments

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top