CMS: Fix tag & marked item filtering on blogposts #23612
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request refactors and improves the filtering logic in the
EfCoreBlogPostRepository
for both theGetCountAsync
andGetListAsync
methods. The main focus is on making the filtering for tag and favorite user IDs more robust and efficient, as well as simplifying the code by removing unnecessary variables and checks.Filtering and Query Improvements:
tagId
andfavoriteUserId
to ensure only valid GUIDs are used, preventing potential runtime errors from invalid IDs. Now, the code filters and parses IDs in one step usingWhere(x => Guid.TryParse(x, out _)).Select(Guid.Parse).ToList()
. [1] [2][]
) instead ofnull
, and updated the query conditions to check for.Count > 0
instead of null checks. This simplifies the logic and avoids null reference issues. [1] [2]Code Simplification:
entityIdFilters
variable and unnecessary calls toToString()
on GUIDs in query filters. [1] [2]GetCountAsync
by returning the result ofCountAsync
directly.