public async Task <RoleDto> GetRoleAsync(Int32 roleId) { Check.IfNullOrZero(roleId); var result = await _securityContext.GetRoleAsync(roleId); if (result == null) { throw new BusinessException("角色可能已被删除,请刷新后再试"); } var powers = await _securityContext.GetPowersAsync(); return(new RoleDto { Name = result.Name, RoleIdentity = result.RoleIdentity, Remark = result.Remark, Powers = powers.Where(w => w.RoleId == result.Id).Select(s => new PowerDto { Id = s.AppId }).ToList() }); }