コード例 #1
0
        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()
            });
        }