diff --git a/Admin.NET/Admin.NET.Core/Service/OnlineUser/SysOnlineUserService.cs b/Admin.NET/Admin.NET.Core/Service/OnlineUser/SysOnlineUserService.cs index d2068f89..44a3da5b 100644 --- a/Admin.NET/Admin.NET.Core/Service/OnlineUser/SysOnlineUserService.cs +++ b/Admin.NET/Admin.NET.Core/Service/OnlineUser/SysOnlineUserService.cs @@ -119,14 +119,16 @@ public class SysOnlineUserService : IDynamicApiController, ITransient if (await _sysConfigService.GetConfigValueByCode(ConfigConst.SysSingleLogin)) return; // 相同账号最后登录的用户Id集合 - var onlineUserIds = await _sysOnlineUerRep.AsQueryable().GroupBy(u => u.UserId) + var onlineUserRecords = await _sysOnlineUerRep.AsQueryable() + .GroupBy(u => u.UserId) .Select(u => new { UserId = u.UserId, Count = SqlFunc.AggregateCount(u.UserId), Id = SqlFunc.AggregateMax(u.Id) }) - .ToListAsync(u => u.Id); + .ToListAsync(); + var onlineUserIds = onlineUserRecords.Select(x => x.Id).ToList(); // 无效登录用户集合 var offlineUsers = await _sysOnlineUerRep.AsQueryable().Where(u => !onlineUserIds.Contains(u.Id)).ToListAsync();