Exemplo n.º 1
0
        internal void RefreshUsers()
        {
            Worker.EnqueueTask(new WorkerTask(args =>
                {
                    try
                    {
                        using (var proxy = new WorkChannel())
                        {
                            return proxy.GetUsers(new EmptyRequest
                            {
                                Login = ClientConfig.CurrentUser.Email,
                                Password = ClientConfig.CurrentUser.Password
                            });
                        }
                    }
                    catch (Exception exc)
                    {
                        Console.WriteLine(exc.Message);
                        return exc;
                    }
                }, (s, e) =>
                    {
                        if( e.Result is Exception)
                        {
                            Utils.HandleException(e.Result as Exception);
                            return;
                        }
                        var result = e.Result as ListResponse<UserDTO>;
                        if (result == null)
                        {
                            Utils.showError(Utils.Messages.UNKNOWN_ERROR_FORMAT);
                            return;
                        }

                        UsersCollection.Clear();
                        foreach (var user in result.Data)
                        {
                            UsersCollection.Add(user);
                        }
                        Modified = false;
                    }, null));
        }