public Task RemoveFromRoleAsync(AbpUser user, string roleName) { return(Task.Factory.StartNew( () => { using (var uow = new UnitOfWorkScope()) { var query = from userRole in _userRoleRepository.GetAll() join role in _roleRepository.GetAll() on userRole.RoleId equals role.Id where userRole.UserId == user.Id && role.Name == roleName select userRole; var searchedUserRole = query.FirstOrDefault(); if (searchedUserRole == null) { return; } _userRoleRepository.Delete(searchedUserRole); uow.Commit(); } })); }