コード例 #1
0
        private async void OnSyncFailed(object sender, SyncFailedEventArgs e)
        {
            if (this.suspensionPending)
            {
                await this.SaveAsync();

                this.TryCompleteCurrentDeferral();
            }
        }
コード例 #2
0
        public static async Task HandleFailedSynced(SyncFailedEventArgs e, IMessageBoxService messageBoxService, INavigationService navigationService)
        {
            if (e == null)
            {
                throw new ArgumentNullException(nameof(e));
            }
            if (messageBoxService == null)
            {
                throw new ArgumentNullException(nameof(messageBoxService));
            }
            if (navigationService == null)
            {
                throw new ArgumentNullException(nameof(navigationService));
            }

            string message = e.Message ?? string.Empty;
            string details = null;

            if (e.Exception != null)
            {
                details = ExceptionExtension.BeautifyAsyncStacktrace(e.Exception.ToString());
            }

            if (!string.IsNullOrEmpty(message))
            {
                if (!string.IsNullOrEmpty(details))
                {
                    var result = await messageBoxService.ShowAsync(
                        StringResources.Sync_FailedMessage,
                        message,
                        new[] { StringResources.General_LabelOk, StringResources.General_LabelDetails });

                    if (result.ButtonIndex == 1)
                    {
                        details = string.Format("{0}\r\n{1}", message, details);
                        await messageBoxService.ShowAsync(StringResources.Message_Information, details);
                    }
                }
                else
                {
                    await messageBoxService.ShowAsync(StringResources.Message_Warning, message);
                }

                if (message.Equals(StringResources.Exchange_InvalidSyncKeyWorkaround))
                {
                    navigationService.FlyoutTo(ViewLocator.SyncAdvancedSyncSettingsPage);
                }
            }
        }
コード例 #3
0
ファイル: MainWindow.xaml.cs プロジェクト: alexchx/Forex
        private void Current_SyncFailed(object sender, SyncFailedEventArgs e)
        {
            Message = e.Message;

            NotifyMessage("Forex data sync error", e.Message);
        }
コード例 #4
0
 private async void OnSyncOperationFailed(object sender, SyncFailedEventArgs e)
 {
     this.notificationService.EndAsyncOperationAsync();
 }
コード例 #5
0
        private async void OnSyncOperationFailed(object sender, SyncFailedEventArgs e)
        {
            this.notificationService.EndAsyncOperationAsync();

            await SyncWarningChecker.HandleFailedSynced(e, this.messageBoxService, this.NavigationService);
        }