Esempio n. 1
0
        public ActionResult RemoveExternalLogins()
        {
            IEnumerable <OAuthAccount> accounts = _membershipProvider.GetOAuthAccountsFromEmailAddress(User.Identity.Name);
            var externalLogins = new List <ExternalLoginModel>();

            foreach (OAuthAccount account in accounts)
            {
                AuthenticationClientData clientData = _membershipProvider.GetOAuthClientData(account.Provider);
                if (clientData == null)
                {
                    continue;
                }

                externalLogins.Add(new ExternalLoginModel {
                    Provider            = account.Provider,
                    ProviderDisplayName = clientData.DisplayName,
                    ProviderUserId      = account.ProviderUserId,
                    Username            = account.Username
                });
            }

            ViewBag.ShowRemoveButton = externalLogins.Count > 1 || _membershipProvider.HasLocalAccount(User.Identity.Name);
            return(PartialView("_RemoveExternalLoginsPartial", externalLogins));
        }