private void SendInvites(List<Contact> toContactsList)
        {
            int count = 0;
            RunOnUiThread(delegate
            {
                dialog = new ProgressDialog(context);
                dialog.SetMessage(Application.Context.GetString(Resource.String.invitePBMessage));
                dialog.SetTitle(Application.Context.GetString(Resource.String.invitePBTitle));
                dialog.SetProgressStyle(ProgressDialogStyle.Horizontal);
                dialog.Max = toContactsList.Count;
                dialog.Progress = 0;
                dialog.Show();
            });
            switch (this.networkType)
            {

                case AccountOAuth.OAuthTypes.FaceBook:

                    foreach (Contact eachContact in toContactsList)
                    {
                        try
                        {
                            string oauthID = string.Empty;
                            for (int i = 0; i < eachContact.ContactOAuths.Count; i++)
                            {
                                if (eachContact.ContactOAuths [i].OAuthType == AccountOAuth.OAuthTypes.FaceBook)
                                {
                                    oauthID = eachContact.ContactOAuths [i].OAuthID;
                                    break;
                                }
                            }
            #if(DEBUG)
                            this.Provider.PostToFeed("Testing, nevermind. http://www.example.com", oauthID);
            #else
                        this.Provider.PostToFeed (string.Format (
                            Application.Context.GetString (Resource.String.inviteFacebookPostMessageFormat),
                            LOLConstants.LinkLOLAppWebsiteUrl), oauthID);
            #endif
                            RunOnUiThread(delegate
                            {
                                dialog.Progress = (int)(++count / toContactsList.Count);
                            });
                        } catch (Exception ex)
                        {
            #if(DEBUG)
                            System.Diagnostics.Debug.WriteLine("Exception inviting user: {0} {1}\n{2}--{3}",
                                              eachContact.ContactUser.FirstName,
                                              eachContact.ContactUser.LastName,
                                              ex.Message,
                                              ex.StackTrace);
            #endif
                        }
                    }
                    break;

                case AccountOAuth.OAuthTypes.Google:
                case AccountOAuth.OAuthTypes.YouTube:
                    if (toContactsList.Count > 0)
                    {
                        List<LOLConnectInviteEmail> emailInvites = new List<LOLConnectInviteEmail>();
                        emailInvites =
                            toContactsList
                                .Select(s =>
                        {
                            return new LOLConnectInviteEmail()
                                    {
                                        ContactName = string.Format("{0} {1}", s.ContactUser.FirstName, s.ContactUser.LastName),
                                        EmailAddress = s.ContactUser.EmailAddress,
                                        OAuthType = this.networkType
                                    };
                        })
                                .ToList();

                        //RunOnUiThread(delegate { dialog.Progress = (int)(++count / toContactsList.Count); });
                        RunOnUiThread(() => Toast.MakeText(context, Application.Context.GetString(Resource.String.commonSendInvite), ToastLength.Short).Show());
                        LOLConnectClient service = new LOLConnectClient(LOLConstants.DefaultHttpBinding, LOLConstants.LOLConnectEndpoint);
                        service.ContactsSendInviteEmailCompleted += Service_ContactsSendInviteEmailCompleted;
                        service.ContactsSendInviteEmailAsync(emailInvites);
                    }//end if
                    break;

                case AccountOAuth.OAuthTypes.LinkedIn:
                    if (toContactsList.Count > 0)
                    {
                        try
                        {
                            LLinkedInManager lMan = (LLinkedInManager)this.Provider;
                            lMan.PostToFeed(
                                StringUtils.CreateLinkedInXMLMessage(Application.Context.GetString(Resource.String.inviteLinkedInPostMessage),
                                                                 LOLConstants.LinkLOLAppWebsiteUrl,
                                                                 AndroidData.CurrentUser, lMan.GetUserProfileUrl()), string.Empty);

                            RunOnUiThread(delegate
                            {
                                dialog.Progress = (int)(++count / toContactsList.Count);
                            });

                        } catch (Exception ex)
                        {
            #if(DEBUG)
                            System.Diagnostics.Debug.WriteLine("Exception creating LinkedIn activity: {0}--{1}",
                                              ex.Message,
                                              ex.StackTrace);
            #endif
                        }
                    }
                    break;
            }
            RunOnUiThread(delegate
            {
                if (dialog != null)
                    dialog.Dismiss();
            });
        }