2016-12-26 1 views

Antwort

0

Wie verwenden wir Nachricht mit Nachrichtenzentrale in Xamarin Formen an: - das ist die Linie I in Balg Methode verwendet haben: -

MessagingCenter.Send(this, typeof(T).Name, typeof(T).Name + " Recieved"); 

DatabaseService.cs --- ich sende diese Botschaft von „DatabaseService.cs“ so Schriftfelter Dies gilt für den Bezug im ersten Parameter, im zweiten Parameter typeof (T) .Name, wobei "T" eine generische Klasse ist. (T ist der Name der Azure-Tabelle nach dem Herunterladen. Ich sende eine Nachricht, um die Daten vom Azure-Server zu erhalten und in der lokalen Datenbank gespeichert). Der zweite Parameter in der Balg-Methode ist auch typeof (T) .Name, der auf den Schlüssel verweist, für den Sender und Empfänger abonniert sind und "Empfangen" Argumente sind, die ich übergebe Identifizieren, dass die Daten aus dem Speicher empfangen oder gelöscht werden, um festzustellen, welche Art von Operation ich auf SQLite ausgeführt habe DB.

/// <summary> 
    /// Function to retrive Records from Azure Server and insert/Update those into localDB . 
    /// </summary> 
    /// <typeparam name="T">Table Name</typeparam> 
    /// <param name="data">Records retrived from Azure Server that are being insrted to localDB.</param> 
    /// <returns></returns> 


     public async Task InsertDataToLocalDB<T>(List<T> data) 
     { 
      List<JObject> jDatas = new List<JObject>(); 
      for (int index = 0; index < data.Count; index++) 
      { 
       jDatas.Add(JObject.FromObject(data[index])); 
      } 
      try 
      { 
       await _store.UpsertAsync(typeof(T).Name, jDatas, true); //_Store is MobileServiceSQLiteStore SQLite store 
      } 
      catch (Exception ww) 
      { 

       //throw; 
      } 


      MessagingCenter.Send(this, typeof(T).Name, typeof(T).Name + " Recieved"); 
     } 

Wie wir verwenden, um Nachrichten an Feed abonieren: -

MessagingCenter.Subscribe<DatabaseService, string>(this, "Notification", async (sender, arg) => 
      { 
       //After Receiving Notifications from server Call Refresh Command 
       await RefreshCommand.ExecuteAsync(); 
      }); 
Verwandte Themen