Skip to content

Commit 140d2e6

Browse files
Merge pull request #47 from PandaTechAM/development
Added support for escaping special characters
2 parents 5678138 + 7d982bd commit 140d2e6

File tree

3 files changed

+28
-3
lines changed

3 files changed

+28
-3
lines changed

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.0.9</Version>
11+
<Version>2.0.10</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>Nuget updates</PackageReleaseNotes>
17+
<PackageReleaseNotes>Added support for escaping special characters</PackageReleaseNotes>
1818
</PropertyGroup>
1919

2020
<ItemGroup>
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
using GridifyExtensions.Models;
2+
using System;
3+
using System.Collections.Generic;
4+
using System.Linq;
5+
using System.Text;
6+
using System.Text.RegularExpressions;
7+
using System.Threading.Tasks;
8+
9+
namespace GridifyExtensions.Helpers;
10+
internal static class GridifyEscapeHelper
11+
{
12+
13+
public static string? ReplaceSpecialChars(string? filter)
14+
{
15+
if (string.IsNullOrWhiteSpace(filter))
16+
{
17+
return filter;
18+
}
19+
20+
var esc = Regex.Replace(filter, @"(?<!\\)([(),|$]|/i)", @"\$1");
21+
22+
return esc;
23+
}
24+
}

src/GridifyExtensions/Models/GridifyQueryModel.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using Gridify;
22
using GridifyExtensions.Exceptions;
3+
using GridifyExtensions.Helpers;
34

45
namespace GridifyExtensions.Models;
56

@@ -50,7 +51,7 @@ public GridifyQueryModel() : this(true)
5051
public new string? Filter
5152
{
5253
get => base.Filter;
53-
set => base.Filter = value;
54+
set => base.Filter = GridifyEscapeHelper.ReplaceSpecialChars(value);
5455
}
5556

5657
public void SetMaxPageSize()

0 commit comments

Comments
 (0)