首页 > 解决方案 > Firebase 总是返回 null

问题描述

我正在使用FirebaseDatabase.net库,并且正在尝试从我的 Firebase 数据库执行实时流式传输。问题是从数据库返回的对象为空。非常感谢帮助!这是代码:

public class FirebaseManager
{
    FirebaseClient firebase;
    IDisposable observable;
    public event EventHandler newMessage;


    public FirebaseManager()
    {
        firebase = new FirebaseClient("https://yatmal-confessions.firebaseio.com/");

    }
    public void StartListening()
    {
        observable = firebase
              .Child("confessions")
              .AsObservable<Message>()
              .Subscribe(m => newMessage(m, null));
    }
 }

消息类:

public class Message
    {
        private string Time;
        private string Confessions;

        public Message()
        {
            Time = null;
            Confessions = null;
        }

        public string time { get => Time; set => Time = value; }
        public string confession { get => Confessions; set => Confessions = value; }
    }

应该获取数据并对其进行处理的 WPF 代码:

public partial class MainWindow : Window
{
    FirebaseManager firebase;
    public MainWindow()
    {
        InitializeComponent();
        firebase = new FirebaseManager();
        firebase.newMessage += newMessage;
        firebase.StartListening();
    }

    void newMessage(Object obj, EventArgs eventArgs)
    {
        Message message = obj as Message;
        Dispatcher.BeginInvoke(new Action(() => tb.Text += message.confession + "\n"));
        MessageBox.Show("End");
    }
}

“newMessage”函数中的对象总是包含空消息。截屏: 截屏

数据库:

火力数据库

标签: c#.netfirebasefirebase-realtime-database

解决方案


推荐阅读