private void Update(object parameter) { Task.Factory.StartNew(() => { canExecute = false; this.Dispatcher.Invoke(new Action(() => { BtnContent = "正在下载升级包,请等待..."; })); UpdateRequest updateRequest = CheckUpdateHelper.GetUploadRequest(); if (updateRequest != null) { Application.Current.Dispatcher.BeginInvoke(new Action(() => { if (MessageBoxHelper.MessageBoxShowQuestion($"检测到新版本{updateRequest.Version}[当前版本{EnvironmentInfo.CurrentVersion}],是否立即升级?") == MessageBoxResult.Yes) { CheckUpdateHelper.ExecuteUpdate(updateRequest); } })); } canExecute = true; this.Dispatcher.Invoke(new Action(() => { BtnContent = "立即升级"; })); }); }
private void UserControl_Loaded(object sender, RoutedEventArgs e) { try { DevOpsProduct product = DevOpsAPI.ReportVersion(); if (product != null) { viewModel.LastVersion = product.ProductVersion; if (CheckUpdateHelper.CompareVersion(EnvironmentInfo.CurrentVersion, product.ProductVersion) < 0) { viewModel.canExecute = true; } else { viewModel.BtnContent = "当前已是最新版本"; } } } catch (Exception ex) { Console.WriteLine(ex); } }