Firebase,Android& C#:如何正确使用LimitToLast函数?

时间:2017-06-15 12:34:46

标签: c# android firebase firebase-realtime-database

我遇到了这个问题,没有关于C#的文档记录。这是我的代码:

private async void DisplayChatMessage()
{
    lstMessage.Clear();

    var items = await firebase.Child(roomName).OnceAsync<MessageContent>();


    foreach (var item in items)
    {
        lstMessage.Add(item.Object);
    }

    ListViewAdapter adapter = new ListViewAdapter(this, lstMessage);
    lstChat.Adapter = adapter;

}

所以,当我这样做的时候,我会让所有的孩子都在房间里。 (这是一个聊天应用程序)。现在,我可以将这一行放入代码中:

    FirebaseDatabase.Instance.GetReference(roomName).LimitToLast(5);

然而,这种做法限制了任何事情。

我想要的只是从聊天室下载最后的x条消息。

你们有什么想法吗?

谢谢:)

编辑:

我开始接近这个问题了: 在我发现的另一个链接中,有人这样做了:

var firebase = new FirebaseClient("https://dinosaur-facts.firebaseio.com/");
var dinos = await firebase
  .Child("dinosaurs")
  .OrderByKey()
  .StartAt("pterodactyl")
  .LimitToFirst(2)
  .OnceAsync<Dinosaur>();

所以,我正在做同样的事情,但是在孩子的字符串之后我没有这些选项。我错过了什么吗?

0 个答案:

没有答案