From 0e4fccaee8ee8eac7c6fd81f849a24bdbbd402e2 Mon Sep 17 00:00:00 2001 From: Enis Necipoglu Date: Wed, 17 Jan 2024 11:22:29 +0300 Subject: [PATCH] Add FindTitleAsync to IPageRepository --- .../Volo.CmsKit.Domain/Volo/CmsKit/Pages/IPageRepository.cs | 2 ++ .../Volo/CmsKit/Pages/EfCorePageRepository.cs | 5 +++++ .../Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs | 6 ++++++ 3 files changed, 13 insertions(+) diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/IPageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/IPageRepository.cs index 0b75c32d6b..2add03f1fd 100644 --- a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/IPageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Pages/IPageRepository.cs @@ -24,4 +24,6 @@ public interface IPageRepository : IBasicRepository Task ExistsAsync(string slug, CancellationToken cancellationToken = default); Task> GetListOfHomePagesAsync(CancellationToken cancellationToken = default); + + Task FindTitleAsync(Guid pageId, CancellationToken cancellationToken = default); } diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Pages/EfCorePageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Pages/EfCorePageRepository.cs index aefd834013..4af6bf18f3 100644 --- a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Pages/EfCorePageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/Pages/EfCorePageRepository.cs @@ -68,4 +68,9 @@ public class EfCorePageRepository : EfCoreRepository x.IsHomePage, cancellationToken: GetCancellationToken(cancellationToken)); } + + public async Task FindTitleAsync(Guid pageId, CancellationToken cancellationToken = default) + { + return await (await GetDbSetAsync()).Where(x => x.Id == pageId).Select(x => x.Title).FirstOrDefaultAsync(cancellationToken); + } } diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs index 601aad0570..565530fcb7 100644 --- a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs +++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo/CmsKit/MongoDB/Pages/MongoPageRepository.cs @@ -76,4 +76,10 @@ public class MongoPageRepository : MongoDbRepository x.IsHomePage, cancellationToken: GetCancellationToken(cancellationToken)); } + + public async Task FindTitleAsync(Guid pageId, CancellationToken cancellationToken = default) + { + return await (await GetMongoQueryableAsync(cancellationToken)).Where(x => x.Id == pageId).Select(x => x.Title) + .FirstOrDefaultAsync(cancellationToken); + } }