From 3726c81f9d9709ec2c628b264a28ef03eb519ec0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B2=88=E6=98=9F=E7=B9=81?= Date: Mon, 24 Apr 2023 14:55:54 +0800 Subject: [PATCH 1/3] fix: remove setters for ICachableRequest --- .../ICachableRequest.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Cnblogs.Architecture.Ddd.Cqrs.Abstractions/ICachableRequest.cs b/src/Cnblogs.Architecture.Ddd.Cqrs.Abstractions/ICachableRequest.cs index 65c03fd..d805bd0 100644 --- a/src/Cnblogs.Architecture.Ddd.Cqrs.Abstractions/ICachableRequest.cs +++ b/src/Cnblogs.Architecture.Ddd.Cqrs.Abstractions/ICachableRequest.cs @@ -8,22 +8,22 @@ public interface ICachableRequest /// /// Configuration for local cache provider. /// - CacheBehavior LocalCacheBehavior { get; set; } + CacheBehavior LocalCacheBehavior { get; } /// /// Configuration for remote cache provider. /// - CacheBehavior RemoteCacheBehavior { get; set; } + CacheBehavior RemoteCacheBehavior { get; } /// /// The expire time for local cache. /// - TimeSpan? LocalExpires { get; set; } + TimeSpan? LocalExpires { get; } /// /// The expire time for remote cache. /// - TimeSpan? RemoteExpires { get; set; } + TimeSpan? RemoteExpires { get; } /// /// Generate key for cache group, return null for no group. From ef3fce9308dde8f7a5f97edde547cc627525489f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B2=88=E6=98=9F=E7=B9=81?= Date: Mon, 24 Apr 2023 16:00:18 +0800 Subject: [PATCH 2/3] fix: return as-is if model validation failed for query --- .../QueryEndpointHandler.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Cnblogs.Architecture.Ddd.Cqrs.AspNetCore/QueryEndpointHandler.cs b/src/Cnblogs.Architecture.Ddd.Cqrs.AspNetCore/QueryEndpointHandler.cs index 5782fda..6bc4051 100644 --- a/src/Cnblogs.Architecture.Ddd.Cqrs.AspNetCore/QueryEndpointHandler.cs +++ b/src/Cnblogs.Architecture.Ddd.Cqrs.AspNetCore/QueryEndpointHandler.cs @@ -29,6 +29,11 @@ public QueryEndpointHandler(IMediator mediator) return query; } + if (query is not IBaseRequest) + { + return query; + } + var response = await _mediator.Send(query); return response; } From 52f17b6f84bcbffa7f660fb9ec17759947b344b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B2=88=E6=98=9F=E7=B9=81?= Date: Mon, 24 Apr 2023 16:00:57 +0800 Subject: [PATCH 3/3] feat: allow null fot paging params in paged list constructor --- .../PagedList.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/Cnblogs.Architecture.Ddd.Infrastructure.Abstractions/PagedList.cs b/src/Cnblogs.Architecture.Ddd.Infrastructure.Abstractions/PagedList.cs index dc24ea4..c09aa9d 100644 --- a/src/Cnblogs.Architecture.Ddd.Infrastructure.Abstractions/PagedList.cs +++ b/src/Cnblogs.Architecture.Ddd.Infrastructure.Abstractions/PagedList.cs @@ -38,13 +38,21 @@ public PagedList(IReadOnlyCollection items, int pageIndex, int pageSize, int /// 包含的元素。 /// 分页参数。 /// 元素总数。 - public PagedList(IReadOnlyCollection items, PagingParams pagingParams, int totalCount) + public PagedList(IReadOnlyCollection items, PagingParams? pagingParams, int totalCount) { Items = items; TotalCount = totalCount; - var (pageIndex, pageSize) = pagingParams; - PageIndex = pageIndex; - PageSize = pageSize; + if (pagingParams is null) + { + PageIndex = 1; + PageSize = totalCount; + } + else + { + var (pageIndex, pageSize) = pagingParams; + PageIndex = pageIndex; + PageSize = pageSize; + } } ///