diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/EfCoreBlogPostRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/EfCoreBlogPostRepository.cs index cc78ffa698..0c1f748f10 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/EfCoreBlogPostRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Blogs/EfCoreBlogPostRepository.cs @@ -106,7 +106,9 @@ public class EfCoreBlogPostRepository : EfCoreRepository> GetAuthorsHasBlogPosts(CancellationToken cancellationToken = default) { - return await (await GetDbContextAsync()).BlogPosts.Select(x => x.Author).Distinct() + return await (await GetDbContextAsync()).BlogPosts + .Where(x => x.Status == BlogPostStatus.Published) + .Select(x => x.Author).Distinct() .ToListAsync(GetCancellationToken(cancellationToken)); } } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs index 65a8bf9c13..a57c0973ce 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Blogs/MongoBlogPostRepository.cs @@ -110,9 +110,12 @@ public class MongoBlogPostRepository : MongoDbRepository> GetAuthorsHasBlogPosts(CancellationToken cancellationToken = default) { - var blogPostQueryable = (await GetQueryableAsync()); + cancellationToken = GetCancellationToken(cancellationToken); + + var blogPostQueryable = (await GetQueryableAsync()) + .Where(x => x.Status == BlogPostStatus.Published); - var usersQueryable = (await GetDbContextAsync()).Collection().AsQueryable(); + var usersQueryable = (await GetDbContextAsync(cancellationToken)).Collection().AsQueryable(); var queryable = blogPostQueryable .Join( @@ -123,6 +126,6 @@ public class MongoBlogPostRepository : MongoDbRepository s.user) .Distinct(); - return await AsyncExecuter.ToListAsync(queryable, GetCancellationToken(cancellationToken)); + return await AsyncExecuter.ToListAsync(queryable, cancellationToken); } }