Beispiel #1
0
        void MainForm_Load(object sender, EventArgs e)
        {
            SynchronizationContext uiContext = SynchronizationContext.Current;

            splashScreenManager1.ShowWaitForm();

            serverConnection
            .ConnectAsync()
            .ContinueWith(task => {
                IReportServerClient client = task.Result;
                client.SetSynchronizationContext(uiContext);
                return(client.GetReportsAsync(null));
            }).Unwrap()
            .ContinueWith(task => {
                splashScreenManager1.CloseWaitForm();
                if (task.IsFaulted)
                {
                    MessageBox.Show(task.Exception.Flatten().InnerException.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    FillReportListBox(task.Result);
                }
            }, TaskScheduler.FromCurrentSynchronizationContext());
        }
Beispiel #2
0
        public MainViewModel()
        {
            SynchronizationContext uiContext = SynchronizationContext.Current;

            ReportObjectCollection = new ObservableCollection <ReportObjects>();
            SelectedReportObject   = new ReportObjects()
            {
                Id = -1
            };
            serverConnection
            .ConnectAsync()
            .ContinueWith(task => {
                IReportServerClient client = task.Result;
                client.SetSynchronizationContext(uiContext);
                return(client.GetReportsAsync(null));
            }).Unwrap()
            .ContinueWith(task => {
                if (task.IsFaulted)
                {
                    MessageBoxService.Show(task.Exception.Message, "Error", System.Windows.MessageBoxButton.OK, System.Windows.MessageBoxImage.Error);
                }
                else
                {
                    FillReportListBox(task.Result);
                }
            }, TaskScheduler.FromCurrentSynchronizationContext());
        }