Exemplo n.º 1
0
        /// <summary>
        /// Deletes a login from a user in the UserLogins table
        /// </summary>
        /// <param name="user">User to have login deleted</param>
        /// <param name="login">Login to be deleted from user</param>
        /// <returns></returns>
        public async Task DeleteAsync(IdentityUser user, UserLoginInfo login)
        {
            AspNetUserLogins foundLogin = await _identityEntities.AspNetUserLogins.SingleOrDefaultAsync(userLogin => userLogin.UserId == user.Id &&
                                                                                                        userLogin.LoginProvider == login.LoginProvider &&
                                                                                                        userLogin.ProviderKey == login.ProviderKey);

            if (foundLogin != null)
            {
                _identityEntities.AspNetUserLogins.Remove(foundLogin);
                await _identityEntities.SaveChangesAsync();
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Return a userId using a user's login
        /// </summary>
        /// <param name="userLogin">The user's login info</param>
        /// <returns></returns>
        public async Task <string> FindUserIdByLoginAsync(UserLoginInfo userLogin)
        {
            if (userLogin != null)
            {
                AspNetUserLogins foundLogin = await _identityEntities.AspNetUserLogins.SingleOrDefaultAsync(login => login.LoginProvider == userLogin.LoginProvider &&
                                                                                                            login.ProviderKey == userLogin.ProviderKey);

                if (foundLogin != null)
                {
                    return(foundLogin.UserId);
                }
            }
            return(String.Empty);
        }