如何执行简单的Couchbase Lite查询

问题描述 投票:0回答:1

我想知道如何进行简单的Couchbase Lite查询。我有文件“测试”包括。 id = 5,名称=“我的第一个测试”。我想获取id(5),其中name =“我的第一个测试”。我还想知道如果该名称=“我的首次测试”条目已经可用,我将如何执行检查?我只想添加它(如果不存在)。谢谢!

Database db = new Database("test_db");

using (var testDoc = new MutableDocument("test"))
{
      testDoc.SetInt("id", 5)
             .SetString("name", "My first test");

      db.Save(testDoc);
}
c# couchbase-lite
1个回答
0
投票

假设我对您的问题的理解是正确的,即仅当属性值存在时,您才想获取具有特定属性值的文档,您可以执行类似的操作

 var query = QueryBuilder.Select(SelectResult.expression(Meta.id),
                SelectResult.expression(Expression.property("id")))
    .From(DataSource.Database(db))
.Where(Expression.Property("name").NotNullOrMissing()
.And(Expression.Property("name").EqualTo(Expression.string("My first test"))))

或者,如果您知道文档的ID,则对ID进行GetDocument会更快。获得文档后,在name属性上执行GetString。如果它返回null,则可以假定它不存在。

请参阅有关Couchbase Lite查询基础知识的文档here。有几个示例。您可能还想查看NotNullOrMissing

上的API规范
© www.soinside.com 2019 - 2024. All rights reserved.