using Dpz.Core.Service.Mediator.Features.Sitemap.Contracts;
namespace Dpz.Core.Service.Mediator.Features.Sitemap.Queries;
/// <summary>
/// 处理站点地图碎碎念数据请求
/// </summary>
public class SitemapMumbleDataHandler(IRepository<Public.Entity.Mumble> repository)
: IRequestHandler<SitemapMumbleDataRequest, SitemapMumbleDataResponse>
{
/// <summary>
/// 执行站点地图碎碎念数据查询
/// </summary>
public async ValueTask<SitemapMumbleDataResponse> Handle(
SitemapMumbleDataRequest request,
CancellationToken cancellationToken
)
{
var source = await repository
.MongodbQueryable.OrderByDescending(x => x.CreateTime)
.Select(x => new { x.Id, x.CreateTime })
.ToListAsync(cancellationToken);
var mumbles = source
.Select(x => new SitemapMumbleItem { Id = x.Id.ToString(), CreateTime = x.CreateTime })
.ToList();
return new SitemapMumbleDataResponse { Mumbles = mumbles, TotalCount = mumbles.Count };
}
}
AI 正在分析代码…
评论加载中...