如何在azure cosmos db中插入图像(Document DB)

时间:2017-09-21 13:44:44

标签: c# azure xamarin uwp azure-cosmosdb

我正在使用 xamarin UWP ,我想在azure cosmos DB(文档数据库)中插入图片。

那我怎么能实现这个目标呢?

1 个答案:

答案 0 :(得分:8)

一些代码

var myDoc = new { id = "42", Name = "Max", City="Aberdeen" }; // this is the document you are trying to save
var attachmentStream = File.OpenRead("c:/Path/To/File.pdf"); // this is the document stream you are attaching

var client = await GetClientAsync();
var createUrl = UriFactory.CreateDocumentCollectionUri(DatabaseName, CollectionName);
Document document = await client.CreateDocumentAsync(createUrl, myDoc);

await client.CreateAttachmentAsync(document.SelfLink, attachmentStream, new MediaOptions()
    {
        ContentType = "application/pdf", // your application type
        Slug = "78", // this is actually attachment ID
    });

来源:Source of code

我是如何找到的:Link for research

以一种不太有趣的方式,而是在一个不会过期的链接中,并为您提供指向正确方向的其他结果。

==

我使用azure,如果你将图像放入documentDb,你将为查询成本付出高昂代价。它内置了它,但基本上通常的做法是使用Azure blob并将链接保存在字段中,然后有一个viewmodel,它将返回链接(如果它是公共的)或二进制数据,如果不是。 / p>

通过绑定附件,您可以进一步将代码固定到仅能够在DocumentDb上工作。