diff --git a/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreAuthorizationStore.cs b/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreAuthorizationStore.cs index 643053c1..4bba4cd2 100644 --- a/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreAuthorizationStore.cs +++ b/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreAuthorizationStore.cs @@ -764,8 +764,10 @@ namespace OpenIddict.EntityFrameworkCore // Warning: FindAsync() is deliberately not used to work around a breaking change introduced // in Entity Framework Core 3.x (where a ValueTask instead of a Task is now returned). - var application = await Applications.AsQueryable() - .FirstOrDefaultAsync(application => application.Id!.Equals(key), cancellationToken); + var application = + await Applications.AsQueryable() + .AsTracking() + .FirstOrDefaultAsync(application => application.Id!.Equals(key), cancellationToken); if (application is null) { diff --git a/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreTokenStore.cs b/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreTokenStore.cs index bcc0d5e6..67499a3e 100644 --- a/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreTokenStore.cs +++ b/src/OpenIddict.EntityFrameworkCore/Stores/OpenIddictEntityFrameworkCoreTokenStore.cs @@ -730,8 +730,10 @@ namespace OpenIddict.EntityFrameworkCore // Warning: FindAsync() is deliberately not used to work around a breaking change introduced // in Entity Framework Core 3.x (where a ValueTask instead of a Task is now returned). - var application = await Applications.AsQueryable() - .FirstOrDefaultAsync(application => application.Id!.Equals(key), cancellationToken); + var application = + await Applications.AsQueryable() + .AsTracking() + .FirstOrDefaultAsync(application => application.Id!.Equals(key), cancellationToken); if (application is null) { @@ -773,8 +775,10 @@ namespace OpenIddict.EntityFrameworkCore // Warning: FindAsync() is deliberately not used to work around a breaking change introduced // in Entity Framework Core 3.x (where a ValueTask instead of a Task is now returned). - var authorization = await Authorizations.AsQueryable() - .FirstOrDefaultAsync(authorization => authorization.Id!.Equals(key), cancellationToken); + var authorization = + await Authorizations.AsQueryable() + .AsTracking() + .FirstOrDefaultAsync(authorization => authorization.Id!.Equals(key), cancellationToken); if (authorization is null) {