From ca4524434904145b24bf1a686234fe310f0e4389 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 20 Jan 2023 16:22:31 +0800 Subject: [PATCH] Update EfCoreOpenIddictAuthorizationRepository.cs --- .../EfCoreOpenIddictAuthorizationRepository.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo/Abp/OpenIddict/Authorizations/EfCoreOpenIddictAuthorizationRepository.cs b/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo/Abp/OpenIddict/Authorizations/EfCoreOpenIddictAuthorizationRepository.cs index ae5e4e18bd..3738884b5c 100644 --- a/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo/Abp/OpenIddict/Authorizations/EfCoreOpenIddictAuthorizationRepository.cs +++ b/modules/openiddict/src/Volo.Abp.OpenIddict.EntityFrameworkCore/Volo/Abp/OpenIddict/Authorizations/EfCoreOpenIddictAuthorizationRepository.cs @@ -82,13 +82,20 @@ public class EfCoreOpenIddictAuthorizationRepository : EfCoreRepository() on authorization.Id equals token.AuthorizationId into authorizationTokens from authorizationToken in authorizationTokens.DefaultIfEmpty() where authorization.CreationDate < date where authorization.Status != OpenIddictConstants.Statuses.Valid || (authorization.Type == OpenIddictConstants.AuthorizationTypes.AdHoc && authorizationToken == null) - select authorization).ExecuteDeleteAsync(cancellationToken); + select authorization.Id).ToListAsync(cancellationToken); + + await (from token in (await GetDbContextAsync()).Set() + where token.AuthorizationId != null && authorizations.Contains(token.AuthorizationId.Value) + select token) + .ExecuteDeleteAsync(GetCancellationToken(cancellationToken)); + + await (await GetDbSetAsync()).Where(x => authorizations.Contains(x.Id)).ExecuteDeleteAsync(cancellationToken); } }