Skip to content

Commit 7d982bd

Browse files
author
Yelena Shahparonyan
committed
Added support for escaping special characters
1 parent 1838369 commit 7d982bd

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)