From dd95488cb0a50d30637168e3154a485f70715054 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 28 Dec 2020 11:52:21 +0300 Subject: [PATCH 1/3] CmsKit - EfCore Tag Query Update - Convert Join query to seperated queries --- .../Volo/CmsKit/Tags/EfCoreTagRepository.cs | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs index 5bbecd3629..ea3b3c5bf9 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs @@ -64,20 +64,17 @@ namespace Volo.CmsKit.Tags Guid? tenantId = null, CancellationToken cancellationToken = default) { + var entityTagIds = await DbContext.Set() + .Where(q => q.EntityId == entityId && q.TenantId == tenantId) + .Select(q => q.EntityId) + .ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); - var query = DbContext.Set() - .Where(x => - x.EntityId == entityId && - x.TenantId == tenantId - ) - .Join( - DbSet, - o => o.TagId, - i => i.Id, - (entityTag, tag) => tag) - .Where(x => x.EntityType == entityType); + var query = DbSet + .Where(x => x.EntityType == entityType && + x.TenantId == tenantId && + entityTagIds.Contains(x.Id.ToString())); - return await query.ToListAsync(); + return await query.ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); } } } From d1c4438143001046b1878f4227febdad2e78eac2 Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Mon, 28 Dec 2020 16:35:21 +0300 Subject: [PATCH 2/3] Update modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs --- .../Volo/CmsKit/Tags/EfCoreTagRepository.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs index 6f8ae1504b..49240f0d9a 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs @@ -66,7 +66,7 @@ namespace Volo.CmsKit.Tags { var entityTagIds = await DbContext.Set() .Where(q => q.EntityId == entityId && q.TenantId == tenantId) - .Select(q => q.EntityId) + .Select(q => q.TagId) .ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); var query = DbSet From 2fa7fd24b913f396e78eaa5c8e02a3cf4b0bf543 Mon Sep 17 00:00:00 2001 From: enisn Date: Mon, 28 Dec 2020 17:21:14 +0300 Subject: [PATCH 3/3] Update EfCoreTagRepository.cs --- .../Volo/CmsKit/Tags/EfCoreTagRepository.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs index 49240f0d9a..593905cc95 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Tags/EfCoreTagRepository.cs @@ -72,7 +72,7 @@ namespace Volo.CmsKit.Tags var query = DbSet .Where(x => x.EntityType == entityType && x.TenantId == tenantId && - entityTagIds.Contains(x.Id.ToString())); + entityTagIds.Contains(x.Id)); return await query.ToListAsync(cancellationToken: GetCancellationToken(cancellationToken)); }