2015-08-26 14 views
5

Negli esempi di documentazione di DocumentDB, trovo l'inserimento di oggetti C#.Inserimento di documenti json in DocumentDB

// Create the Andersen family document. 
Family AndersenFamily = new Family 
{ 
    Id = "AndersenFamily", 
    LastName = "Andersen", 
    Parents = new Parent[] { 
     new Parent { FirstName = "Thomas" }, 
     new Parent { FirstName = "Mary Kay"} 
    }, 
    IsRegistered = true 
}; 

await client.CreateDocumentAsync(documentCollection.DocumentsLink, AndersenFamily); 

Nel mio caso, io sto ricevendo le stringhe JSON dal client applicazione e vorrebbe inserirli in DocumentDB senza deserializzazione. Non ho trovato alcun esempio di fare qualcosa di simile.

Qualsiasi aiuto è sinceramente apprezzato ..

Grazie

risposta

6

copiati dal published .NET Sample code -

private static async Task UseStreams(string colSelfLink) 
    { 
     var dir = new DirectoryInfo(@".\Data"); 
     var files = dir.EnumerateFiles("*.json"); 
     foreach (var file in files) 
     { 
      using (var fileStream = new FileStream(file.FullName, FileMode.Open, FileAccess.Read)) 
      { 
       Document doc = await client.CreateDocumentAsync(colSelfLink, Resource.LoadFrom<Document>(fileStream)); 
       Console.WriteLine("Created Document: ", doc); 
      } 
     } 

     //Read one the documents created above directly in to a Json string 
     Document readDoc = client.CreateDocumentQuery(colSelfLink).Where(d => d.Id == "JSON1").AsEnumerable().First(); 
     string content = JsonConvert.SerializeObject(readDoc); 

     //Update a document with some Json text, 
     //Here we're replacing a previously created document with some new text and even introudcing a new Property, Status=Cancelled 
     using (var memoryStream = new MemoryStream(Encoding.UTF8.GetBytes("{\"id\": \"JSON1\",\"PurchaseOrderNumber\": \"PO18009186470\",\"Status\": \"Cancelled\"}"))) 
     { 
      await client.ReplaceDocumentAsync(readDoc.SelfLink, Resource.LoadFrom<Document>(memoryStream)); 
     } 
    } 
+0

Qual è risorsa? –

+0

@JonathanFishbein È una classe nell'SDK di DocumentDB .Net. – AndyJ

Problemi correlati