/// <summary> /// 获取当前用户的登录信息列表。 /// </summary> /// <param name="user">当前用户实例。</param> /// <param name="cancellationToken">取消标志。</param> /// <returns> /// 返回当前用户所有登录信息。 /// </returns> public override async Task <IList <UserLoginInfo> > GetLoginsAsync(TUser user, CancellationToken cancellationToken = default) { var loginInfos = await UserLoginContext.FetchAsync(x => x.UserId == user.Id, cancellationToken); return(loginInfos.Select(x => new UserLoginInfo(x.LoginProvider, x.ProviderKey, x.ProviderDisplayName)).ToList()); }