如何仅从Firebase检索更新的数据?

时间:2018-04-03 11:45:00

标签: asp.net-mvc firebase firebase-realtime-database

我创建了一个用于研究目的的小型asp.net MVC Web应用程序,它将数据存储在Firebase和SQL服务器中。每当Firebase中的数据更新时,我都会将数据更新到SQL服务器,然后从SQL服务器调用数据,之后我将这些数据显示在网页中。

下面是更新Firebase后更新SQL Server中数据的代码。(我只更新'status'字段)

firebase.database().ref("Table/").on('value',
function (snapshot) {
    snapshot.forEach(function (child) {

        firebase.database().ref("Table/" + child.key + "/").on('value',
            function (snap1) {
                snap1.forEach(function (child1) {

                    firebase.database().ref("Table/" + child.key + "/" + child1.key + "/").on('child_changed', function (s) {
                        var Status, tableId;
                        s.forEach(function (c) {
                            if (c.key == "status") {
                                Status = c.val();
                            }
                            if (c.key == "tableId") {
                                tableId = c.val();
                            }
                        });
                        $.ajax({
                            type: "post",
                            url: "/BranchManager/UpdateStatus",
                            data: { status: Status, id: tableId },
                            datatype: "json",
                            traditional: true,
                            success: function () {
                                console.log("Table Updated: Status");
                            }
                        });
                    });
                });
            });
    });
});

当应用程序在浏览器中运行时,代码正在运行。

这里我在Index.cshtml中编写了上面的代码。因此,如果从firebase更新任何数据并且应用程序处于offile状态,那么在启动应用程序之后它将加载 上面的代码和更新sql server中的数据。但是不行。

我已经从谷歌提交了this文件,但我无法获得解决方案。

调用'child_changed'事件时我很困惑?有没有办法只从Firebase获取更新的数据?

0 个答案:

没有答案