如果文件名已经存在,我想更新cosmos DB中的文档。为此,我传递了一个查询,该查询将带来结果,并且我想更新该结果。我想为其设置修改日期。如果是新创建的,则在其中添加修改的日期。
我正面临更新它的问题,它将在其他部分出现。
这是我的代码段:
Class1 obj = new Class1()
{
BlobPath = "/container",
size = (int)myBlob.Length,
Name = name,
CreationDateTime = DateTime.Now.ToString()
};
string obj1 = JsonConvert.SerializeObject(obj);
var query = client.CreateDocumentQuery<Class1>(
UriFactory.CreateDocumentCollectionUri("testDb", "testDocumentCollection"))
.Where(jo => jo.Name.Equals(name))
.AsEnumerable().FirstOrDefault();
if (query == null)
{
var document1 = await client.CreateDocumentAsync(
UriFactory.CreateDocumentCollectionUri("testDb", "testDocumentCollection"),
obj);
}
答案 0 :(得分:1)
要更新文档,您必须使用Upsert方法:
DocumentClient.UpsertDocumentAsync Method
此博客条目包含有关它的一些详细信息:
DocumentDB: To create, or not to create, that is the question