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 1f408f3cc6..d9ba997771 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 @@ -23,16 +23,22 @@ namespace Volo.CmsKit.Blogs { } - public async Task GetBySlugAsync(Guid blogId, [NotNull] string slug, + public async Task GetBySlugAsync( + Guid blogId, + [NotNull] string slug, CancellationToken cancellationToken = default) { Check.NotNullOrEmpty(slug, nameof(slug)); - return await (await WithDetailsAsync()) - .Where(x => - x.BlogId == blogId && x.Slug.ToLower() == slug) - .FirstOrDefaultAsync(cancellationToken: GetCancellationToken(cancellationToken)) - ?? throw new EntityNotFoundException(typeof(BlogPost)); + var blogPost = await GetAsync( + x => x.BlogId == blogId && x.Slug.ToLower() == slug, + cancellationToken: GetCancellationToken(cancellationToken)); + + blogPost.Author = await (await GetDbContextAsync()) + .Set() + .FirstOrDefaultAsync(x =>x.Id == blogPost.AuthorId); + + return blogPost; } public async Task GetCountAsync(Guid blogId, CancellationToken cancellationToken = default)