Ejemplo n.º 1
0
        /// <summary>
        /// Create a listener to receive changes from Firebase
        /// </summary>
        public static void ReceiveChangesFromDB()
        {
            Rootobject RootObject = new Rootobject();

            try
            {
                DocumentReference       docRef   = firestoreDb.Collection(CollectionName).Document(DocumentName);
                FirestoreChangeListener listener = docRef.Listen(snapshot =>
                {
                    Console.WriteLine("Callback received document snapshot.");

                    if (snapshot.Exists)
                    {
                        Console.WriteLine("Document data for {0} document:", snapshot.Id);

                        var st          = Newtonsoft.Json.JsonConvert.SerializeObject(snapshot.ToDictionary());
                        var _RootObject = Newtonsoft.Json.JsonConvert.DeserializeObject <Rootobject>(st);
                        RhinoManagement.ProcessRemoteChanges(_RootObject);

                        //TODO check this to detect changes
                    }
                });
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error " + ex.Message);
                return;
            }
        }