首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Firebase StartAt()不起作用-没有它它会返回相同的结果

Firebase StartAt()不起作用-没有它它会返回相同的结果
EN

Stack Overflow用户
提问于 2020-05-28 12:17:02
回答 1查看 67关注 0票数 1

我试着得到前5个结果(1-5),然后(6-10)...诸若此类。我保存我收到的最后一个值,以便在我停止的地方StartAt,但当我检查新的值时,它仍然显示值1-5而不是6-10。

另外,我不明白我是否真的必须使用orderByChild,而我的键已经在DB上排序了。

我的数据库-

代码语言:javascript
运行
复制
users
    +user1
    +user2
    +user3
    +user4
    +user5
    +user6
    .....
    +user50

前1-5:

代码语言:javascript
运行
复制
  task = await FirebaseDatabase.DefaultInstance.GetReference("users").OrderByValue().LimitToFirst(5).GetValueAsync().ContinueWith(t => t);

这很好用。现在,我正在尝试让用户达到6-10

代码语言:javascript
运行
复制
  lastUserId= "user5"
  task=null;
  task = await FirebaseDatabase.DefaultInstance.GetReference("users").OrderByValue().StartAt(lastUserId).LimitToFirst(5).GetValueAsync().ContinueWith(t => t);
  DataSnapshot dts = task.Result;
  foreach (DataSnapshot s in dts.Children)
  {
  Debug.Log(s.Key);
  }

输出: user1 user2 user3 user4 user5如果我的代码是StartAt(“user5”),为什么它从user1开始??我遗漏了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-29 14:06:58

根据你的评论,这是我(非常简短)的回答:

您应该使用OrderByKey.StartAt('userId')而不是OrderByValue

很高兴能帮上忙。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62056981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档