public async Task OnGetAsync(int accountId) { AdminUserInfoService adminUserInfoService = _serviceProvider.GetService <AdminUserInfoService>(); SysRoleService sysRoleService = _serviceProvider.GetService <SysRoleService>(); //SysRoleAdminUserInfoService sysRoleAdminUserInfoService = _serviceProvider.GetService<SysRoleAdminUserInfoService>(); IEnumerable <SysRole> sysRoles = await sysRoleService.GetFullListAsync(_ => true); IEnumerable <SysRoleAdminUserInfo> sysRoleAdminUserInfos = await sysRoleAdminUserInfoService.GetFullListAsync(_ => _.AccountId == accountId); IEnumerable <SysRoleAdminUserInfoDto> dto = from _ in sysRoles join __ in sysRoleAdminUserInfos on _.Id equals __.RoleId into __Left from __ in __Left.DefaultIfEmpty() select new SysRoleAdminUserInfoDto() { AdminAccountId = accountId, HasRole = __ != null, RoleId = _.Id, RoleName = _.RoleName }; RoleAdminUserInfoDtos = dto; }