RavenDB Attachments - Funktionalität wie?

8

Ich habe eine Dateieingabesteuerung.

%Vor%

Sagen wir, ich suche nach C: /Instruction.pdf Dokument und klicke auf "Senden". Bei Senden möchte ich das Dokument in RavenDB speichern und es später auch für Download-Zwecke abrufen. Ich habe diesen Link Ссылка gesehen das sagt .. mach das ..

%Vor%

Ich folge nicht, was 1,2,3 hier bedeutet und was es heißt, videos / 2 in dem Befehl zu sagen ... wie ich diese zwei Zeilen verwenden kann, um es in meinem Fall zu benutzen .. um Word / pdfs zu speichern in ravendb .. wenn jemand so etwas zuvor getan hat, bitte beraten.

Ich bin nicht klar in einer Sache .. wie die Anlage gespeichert ist. Wenn ich den Anhang selbst speichern möchte (zB pdf), wird er unabhängig in ravendb gespeichert .. und ich speichere nur den Schlüssel des Anhangs im Hauptdokument, mit dem er verknüpft ist? Wenn das so ist, wo ist das PDF physisch in ravendb gespeichert? kann ich es sehen?

    
ZVenue 12.07.2012, 17:42
quelle

2 Antworten

11

Das 1,2,3 ist nur Beispieldaten. Was versucht wird, ist, dass Sie einen Speicher-Stream von was auch immer Sie wollen, dann verwenden Sie diesen Speicher-Stream in der PutAttachment-Methode. Unten ist Ad-hoc und nicht getestet, sollte aber funktionieren:

%Vor%

Für den Rest der Fragen bearbeitet

  1. Wie wird Anhang gespeichert? Ich glaube, es ist ein JSON-Dokument mit einer Eigenschaft, die das Byte-Array des Anhangs
  2. enthält
  3. Ist das "Dokument" unabhängig gespeichert? Ja. Ein Anhang ist ein spezielles Dokument, das nicht indiziert ist, aber Teil der Datenbank ist, so dass Aufgaben wie die Replikation funktionieren.
  4. "Soll ich" den Schlüssel des Anhangs im Hauptdokument speichern, mit dem er verknüpft ist? Ja, du würdest den Schlüssel referenzieren und wann immer du willst, dass du Raven einfach nach dem Anhang mit dieser ID fragst.
  5. Wird das PDF physisch in ravendb gespeichert? Ja.
  6. Kannst du es sehen? Nein. Es erscheint sogar im Studio (zumindest soweit ich weiß)

Bearbeiten Korrigiertes und aktualisiertes Beispiel

%Vor%     
Shawn C. 12.07.2012, 18:35
quelle
8
  • Wie wird Anhang gespeichert?

Es wird als Binärdaten in RavenDB gespeichert. Es wird NICHT als JSON gespeichert.

  • Ist das "Dokument" unabhängig gespeichert?

Es gibt kein Dokument hier, Sie haben einige Metadaten, die dem Anhang zugeordnet sind, es ist kein seaprates Dokument.

  • "Soll ich" den Schlüssel des Anhangs im Hauptdokument speichern, mit dem er verknüpft ist?

Ja, es gibt keine Möglichkeit, danach zu fragen.

  • Wird das PDF physisch in ravendb gespeichert?

Ja

  • Kannst du es sehen?

Nur wenn Sie direkt zum Anhang gehen, z. B. http://localhost:8080/static/ATTACHMENT_KEY

Es wird nicht in der Benutzeroberfläche angezeigt

    
Ayende Rahien 13.07.2012 08:18
quelle

Tags und Links