微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 C# FaunaDB 客户端,如何查询索引?

如何解决使用 C# FaunaDB 客户端,如何查询索引?

我是 FaunaDB 的新手。我已经能够像这样使用 C# 将一堆文档添加到集合中:

Value value = fauna.Query(Create(
    Collection("MyCollection"),Obj("data",Encoder.Encode(trans))
    )).Result;

现在我需要查询单个文档。因此,在 FaunaDB Shell 中,这很有效并返回预期的文档。

Get(
  Match(
    Index("FITID"),"2021043000000000000000000000002122180019216600000088701"
  )
)

但是,当我尝试在 C# 中使用它时,我收到一个错误,我不知道如何修复。我找不到任何特定于我正在尝试做的事情的示例。

Value value = fauna.Query(
        Get(
            Match(
                Index("FITID","2021043000000000000000000000002122180019216600000088701")
                )
            )
        ).Result;

我得到的错误

BadRequest:无效参数:需要数据库引用,提供字符串。

有什么建议吗?

编辑:感谢@eskwayrd 发现我的错误。正确的命令如下。

Value value = fauna.Query(
        Get(
            Match(
                Index("FITID"),"2021043000000000000000000000002122180019216600000088701"
                )
            )
        ).Result;

解决方法

Index 函数返回指定索引名称的引用。在您的 C# 代码中,您将索引名称和数字字符串传递给 Index。如果您修复了查询中的括号,它应该可以正常工作。

参见“检索帖子”下的第二个示例:https://docs.fauna.com/fauna/current/tutorials/crud?lang=csharp#retrieve

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。