Exemplo n.º 1
0
        private void SearchSuggestedContacts()
        {
            if (mSearchTokenSource != null)
            {
                mSearchTokenSource.Cancel();
                mSearchTokenSource = null;
            }

            mSearchTokenSource = new CancellationTokenSource();
            var token = mSearchTokenSource.Token;

            Task.Run(async() =>
            {
                await Task.Delay(500, token);

                mPlatformService.ShowNetworkIndicator();

                var result = await mApiService.GetContactList(EmailInvite);

                mPlatformService.HideNetworkIndicator();

                if (result.StatusCode == System.Net.HttpStatusCode.OK && result.Data != null)
                {
                    var realList = result.Data.Where(p => !Invites.Any(ct => ct.Invite.InviteeEmail == p.InviteeEmail));
                    if (realList.Count() > 0)
                    {
                        ShowSuggestedContacts = true;
                        SuggestedContacts     = new MvxObservableCollection <Invite>(realList);
                    }
                    else
                    {
                        ShowSuggestedContacts = false;
                    }
                }
                else
                {
                    ShowSuggestedContacts = false;
                }
            }, token);;
        }