コード例 #1
0
        Task <HttpResponseMessage> MakeSafeHttpRequestAsync(Func <Task <HttpResponseMessage> > http_request)
        {
            Func <Task <HttpResponseMessage> > func = new Func <Task <HttpResponseMessage> >(async() =>
            {
                HttpResponseMessage task_res = null;

                try
                {
                    HttpResponseMessage res = await http_request();
                    task_res = res;

                    _ = Dispatcher.UIThread.InvokeAsync(() =>
                    {
                        // ServerConnectionInfo = "Server: Connected";
                        _uiser.GraphicalReactionToServerCondition("Connected");
                    }
                                                        );
                }
                catch (Exception)
                {
                    _ = Dispatcher.UIThread.InvokeAsync(() =>
                    {
                        // ServerConnectionInfo = "Server: Disconnected";
                        _uiser.GraphicalReactionToServerCondition("Disconnected");
                        _uiser.IsVisibleProgressBar(false);
                    });
                }

                return(task_res);
            });
            Task <HttpResponseMessage> http_request_task = func();

            return(http_request_task);
        }