Skip to content

Commit 74fb9d0

Browse files
committed
TotalCount bug fix on edge cases
1 parent db6dda8 commit 74fb9d0

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

src/GridifyExtensions/Extensions/QueryableExtensions.cs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,14 +95,17 @@ public static async Task<PagedResponse<TDto>> FilterOrderAndGetPagedAsync<TEntit
9595
var mapper = RequireMapper<TEntity>();
9696
model.OrderBy ??= mapper.GetDefaultOrderExpression();
9797

98-
query = query.ApplyFilteringAndOrdering(model, mapper);
98+
var filtered = query.ApplyFiltering(model, mapper);
9999

100-
var totalCount = await query.CountAsync(cancellationToken);
100+
var totalCount = await filtered.CountAsync(cancellationToken);
101101

102-
var dtoQuery = query.Select(selectExpression)
103-
.ApplyPaging(model.Page, model.PageSize);
102+
var ordered = filtered.ApplyOrdering(model, mapper);
104103

105-
var data = await dtoQuery.ToListAsync(cancellationToken);
104+
var data = await ordered
105+
.Select(selectExpression)
106+
.ApplyPaging(model.Page, model.PageSize)
107+
.ToListAsync(cancellationToken);
108+
106109
return new PagedResponse<TDto>(data, model.Page, model.PageSize, totalCount);
107110
}
108111

src/GridifyExtensions/GridifyExtensions.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@
88
<PackageReadmeFile>Readme.md</PackageReadmeFile>
99
<Authors>Pandatech</Authors>
1010
<Copyright>MIT</Copyright>
11-
<Version>2.1.0</Version>
11+
<Version>2.1.1</Version>
1212
<PackageId>Pandatech.GridifyExtensions</PackageId>
1313
<Title>Pandatech.Gridify.Extensions</Title>
1414
<PackageTags>Pandatech, library, Gridify, Pagination, Filters</PackageTags>
1515
<Description>Pandatech.Gridify.Extensions simplifies and extends the functionality of the Gridify NuGet package. It provides additional extension methods and functionality to streamline data filtering and pagination, making it more intuitive and powerful to use in .NET applications. Our enhancements ensure more flexibility, reduce boilerplate code, and improve overall developer productivity when working with Gridify.</Description>
1616
<RepositoryUrl>https://github.com/PandaTechAM/be-lib-gridify-extensions</RepositoryUrl>
17-
<PackageReleaseNotes>New overloads has been added</PackageReleaseNotes>
17+
<PackageReleaseNotes>TotalCount bug fix on edge cases</PackageReleaseNotes>
1818
</PropertyGroup>
1919

2020
<ItemGroup>

0 commit comments

Comments
 (0)