/// <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) { UserLogins foundLogin = await _identityEntities.UserLogins.SingleOrDefaultAsync(userLogin => userLogin.UserId == user.Id && userLogin.LoginProvider == login.LoginProvider && userLogin.ProviderKey == login.ProviderKey); if (foundLogin != null) { _identityEntities.UserLogins.Remove(foundLogin); await _identityEntities.SaveChangesAsync(); } }
/// <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) { UserLogins foundLogin = await _identityEntities.UserLogins.SingleOrDefaultAsync(login => login.LoginProvider == userLogin.LoginProvider && login.ProviderKey == userLogin.ProviderKey); if (foundLogin != null) { return(foundLogin.UserId); } } return(String.Empty); }