2016-08-23 3 views
0

Ich schreibe App für UWP (C#), es ist Admin-Panel für Restaurant. Es muss Bestellungen von der WordPress-Website erhalten. Ich organisierte von WooCommerce wie dieses Ich braucheSo zeigen Sie eine Benachrichtigung bei Erhalt einer neuen Bestellung

public async void Down() 
{ 
    RestAPI rest = new RestAPI("http://simplegames.com.ua/wp-json/wc/v1/", "ck_9d64c027d2c5f81b8bed3342eeccc6d337be813d", "cs_60697b1e6cbdeb8d62d19e0765e339f8e3334754"); 
    WCObject wc = new WCObject(rest); 
    //Get all products 
    var orders = await wc.GetOrders(); 
    string date = orders[0].date_created + "+0:00"; 
    DateTime dt = DateTime.Parse(date); 
    string convertedDate = dt.ToString("dd/MM/yyyy HH:mm:ss"); 

    try 
    { 
     date1.Text = convertedDate; 
     adress1.Text = orders[0].shipping.address_1.ToString() 
      + "      " + orders[0].shipping.address_2; 
     name1.Text = orders[0].billing.first_name.ToString(); 
    } 
    catch (Exception e) 
    { 
     Debug.WriteLine(e.Message); 
     Debug.WriteLine(e.StackTrace); 
    } 
} 

Empfang der App, die Schaffung einer neuen Ordnung zu überwachen und, wenn es eine neue Ordnung ist, geben etwas wie ein Pop-up?

Antwort

0

Wenn Sie meinen, dass Ihre Anwendung geschlossen werden könnte, und Sie wollen Nachricht erhalten, dann müssen Sie bei Background aussehen: Create and register a background task that runs in a separate process

und Sie TimeTrigger können neue Aufträge alle 15 min zu überwachen. oder MaintenanceTrigger

und Toast zeigen, wenn es neue Ordnung mit Code ist wie:

void ShowToast(string whattext) 
    { 
     XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01); 
     XmlNodeList stringElements = toastXml.GetElementsByTagName("text"); 
     stringElements[0].AppendChild(toastXml.CreateTextNode(whattext)); 
     ToastNotification toast = new ToastNotification(toastXml); 

     toast.Activated += ToastActivated; 
     toast.Dismissed += ToastDismissed; 
     toast.Failed += ToastFailed; 

     ToastNotificationManager.CreateToastNotifier().Show(toast); 
    } 

    private void ToastFailed(ToastNotification sender, ToastFailedEventArgs args) { } 
    private void ToastDismissed(ToastNotification sender, ToastDismissedEventArgs args) { } 
    private void ToastActivated(ToastNotification sender, object args) { } 

Wenn Sie Aufträge überprüfen, in der aktiven Anwendung wollen - nur okay DispatcherTimer

+0

verwenden. Ich mache Update auf Timer. Wo muss ich Code mit Toast-Benachrichtigung einfügen? –

+0

Inside DispatcherTimer_Tick Event können Sie Ihre Down() Methode –

+0

Ich habe dies getan und die Aktualisierung funktioniert. Ich meine, wo ich Toast Benachrichtigung einfügen muss? Ich versuche, es in "öffentliche versiegelte Teilklasse InWork einfügen: Seite" Es eingefügt gut. Wenn ich versuche, es in Down() einzufügen, habe ich Fehler –

Verwandte Themen