Exemplo n.º 1
0
        public static void Do()
        {
            var getter = new RemoteVersionInfoGetter();

            if (!isFristCheck)
            {
                MainWindowBus.Info("Update.CheckingUpdate");
            }
            getter.Advance().ContinueWith(task =>
            {
                if (task.IsFaulted)
                {
                    if (!isFristCheck)
                    {
                        MainWindowBus.Error("Update.Failed");
                    }
                }
                else
                {
                    if (task.Result.Version > Self.Version)
                    {
                        App.Current.Dispatcher.Invoke(() =>
                        {
                            DoAsk(task.Result);
                        });
                    }
                    else
                    {
                        MainWindowBus.Success("Update.IsLatestVersion");
                    }
                }
                isFristCheck = false;
            });
        }
Exemplo n.º 2
0
 public static Task RefreshAsync(Action callback)
 {
     return(Task.Run(() =>
     {
         RemoteVersionInfoGetter getter = new RemoteVersionInfoGetter();
         try
         {
             Result = getter.GetSync();
             callback?.Invoke();
         }
         catch (Exception e)
         {
             SLogger.Warn(nameof(Updater), "cannot refresh update informations", e);
         }
     }));
 }