Commit Graph

90 Commits

Author SHA1 Message Date
ITDancer139
3e858fd7e6 Update Authors 2021-05-13 14:28:50 +02:00
ITDancer139
a193de422b fix authors 2021-05-13 14:27:27 +02:00
ITDancer139
95282baecf * Add build pipeline based on nuke 2021-05-13 14:15:27 +02:00
ITDancer139
428acd7558 * Migrate tests to xunit
* Update sample project to dotnetcore3.1
* Use Sqlite in sample project to run it everywhere
* Fix: Filter with escaped comma
* Fix: Filter "null" does not work with Contains or StartsWith
* Code cleanup: Adjust namespaces, adjust usings
2021-05-13 14:04:18 +02:00
Tilmann Bach
11938c9b8a fix(processor): fixes OR combination from bitwise or to sql query OR
fixes #101
2021-02-13 13:19:57 +01:00
Tilmann Bach
cbf6759274 fix(processor): fixes AND expression when combining multiple conditions via outer expression
fixes #115, ref #101
2021-02-13 13:16:00 +01:00
Hasan
a4509bb8f0
OrderByDynamic is modified to be able to handle inherited members, such as interface members.
SieveProcessor is modified to pass propertyInfo to OrderByDynamic to avoid reattainment of propertyInfo required in Expression.MakeMemberAccess.
SieveProcessor is modified to be able to handle possible multiple incompatible customMethods via AggregateException.
Corresponding interfaces are generated for entities with related inheritance.
ApplicationSieveProcessor is modified to include interface members.
SieveCustomFilterMethods and SieveCustomSortMethod are modified to include interface related custom method modifications.
Interface accessed unit tests are added.
2020-11-03 12:42:41 +03:00
Kevin Dost
f39944d0e4 Add filtering on null. 2020-10-23 18:15:58 +02:00
Ashish Patel
b47ed62f77
Merge pull request #95 from kevindost/fix/accessing-null-members
Fix issue where sorting or filtering a collection fails on accesssing null members.
2020-10-23 02:00:48 +05:30
Ashish Patel
cada68a83b
Merge pull request #89 from awegg/master
Fix issue with spaces after comma and or filters
2020-10-23 00:43:05 +05:30
Kevin Dost
7a24bc8f27 Fix grammar errors 2020-10-21 18:51:15 +02:00
Kevin Dost
5c2ef3773e Fix issue where sorting or filtering a collection fails on accesssing null members. 2020-10-21 17:50:03 +02:00
Alexander Weggerle
4cac27c22d Fix issue where the order of Filter expressions changed the result.
The following filter criteria should result in the same output, but
does not:
"CategoryId==1,(CategoryId|LikeCount)==50"
"(CategoryId|LikeCount)==50,CategoryId==1"

Cause is an optimization which removes or statements if one term
was already added in another statement. This optimization causes
a wrong result.
2020-07-06 22:03:45 +02:00
Alexander Weggerle
6684524fcd Fix issue with spaces after comma and or filters
Combined filters separated with comma and a space resulted in an error. 
Example: 
Title==D, (Title|LikeCount)==3
Caused the error: "(Title not found"

Extended regex to allow whitespaces after the comma as documented.
2020-07-04 21:16:54 +02:00
Biarity
d86e35f77c v2.3.3 2019-11-17 09:15:07 +10:00
Biarity
0dae8c8beb Merge branch 'master' of https://github.com/Biarity/Sieve 2019-11-17 08:58:12 +10:00
Biarity
6652ada702 Style fixes 2019-11-17 08:51:13 +10:00
Biarity
0637912098
Merge pull request #63 from janverley/master
Only Skip when pageSize > 0
2019-11-16 10:56:04 +10:00
Biarity
c04d94d22a
Merge pull request #60 from skolmer/generics
Added support for generic filter and sort methods
2019-11-16 10:55:18 +10:00
Steffen Kolmer
cfd380d93f Allow case insensitive not equals operator 2019-11-05 15:10:44 +01:00
Jan Verley
567cd67c7f Only Skip when pageSize > 0 2019-05-09 11:29:39 +02:00
Steffen Kolmer
e1bb069253 Added support for generic filter and sort methods 2019-03-24 19:45:23 +01:00
Brendan
dcde97af91
fix: dont process when filterTerm.Values is null 2019-03-20 14:04:33 -04:00
Biarity
a582c6be06 Use Comment.Text instead of ValueObjects.Name 2019-03-18 08:23:37 +10:00
radeanurazvan
d5ed13e823 Allowed configuring properties with identical name 2019-02-03 18:10:34 +02:00
Biarity
35167075bf Document #51 2019-01-18 20:54:55 +10:00
Jakub Syty
440ebe8cc0 Fixes with custom name setup 2019-01-18 11:00:42 +01:00
Jakub Syty
bd904dff8a Allow filtering and sorting for nested objects 2019-01-18 07:27:52 +01:00
Biarity
9174479624 Updated to version 2.3.0 2019-01-09 20:41:23 +10:00
SuperGouge
feac41dee1 Removed unnecessary using 2019-01-09 10:15:17 +01:00
SuperGouge
194b1d9fb5 Added negation operator 2019-01-08 17:20:49 +01:00
Biarity
c818267526 Document & test multiple values for 2.2.0. Closes #46 2018-11-30 09:08:39 +10:00
Biarity
2d5fc0d232 Implement IEquatable for sort and filter terms, closes #38 2018-11-16 18:23:45 +10:00
Biarity
faa363edbb Added OR flitering for values and ability to escape delimiters. Fixes #8, #21, and #41 2018-11-16 18:08:25 +10:00
Biarity
f9c7fb4cb0 Convert parsing from getters to methods 2018-07-06 11:12:45 +10:00
Biarity
c816cf2f2a Published 2.1.5 2018-07-04 13:09:45 +10:00
Biarity
b92df9833d Fixes #33 2018-07-04 13:06:37 +10:00
Biarity
254eec529e Check for duplicate filteers/sorts and performance measurement code for SieveTests 2018-07-04 11:26:49 +10:00
Biarity
c72175bf4a Test & publish v2.1.4 2018-07-02 10:10:42 +10:00
Biarity
3308f809b1 Better SieveModel, FilterTerm, and SortTerm generics 2018-07-02 09:37:40 +10:00
Biarity
f326822f4a Better SieveProcessor generics 2018-07-01 19:16:26 +10:00
Biarity
02e4fb55b4 Model data contract 2018-06-26 14:59:33 +10:00
Matt Furden
d792813cd5 Allow Filters on different sources to share the same name
Allows Posts and Comments to both use the IsNew filter with their own implementations.
2018-06-15 01:41:01 -07:00
Biarity
abb7029c70 Fixes #28 2018-06-14 18:50:19 +10:00
Biarity
d149721627 Merge branch 'master' of https://github.com/Biarity/Sieve 2018-05-28 18:00:28 +10:00
Biarity
919a27db29 Version 2.1.0 2018-05-28 18:00:21 +10:00
Matt Furden
cd561e9f3d Use Expression.Constant to allow Nullable comparison
Using Expression.Constant for GetClosureOverConstant. Came to this solution from reading:  http://bradwilson.typepad.com/blog/2008/07/creating-nullab.html
2018-05-27 18:33:10 -07:00
Biarity
c4166f4ea8
Merge branch 'master' into master 2018-05-25 18:07:19 +10:00
Daniel Macko
fd4367cf37 Ensure that dynamic LINQ expressions for filters match with those generated by Queryable.Where (#22) 2018-05-24 14:16:10 +10:00
David Bond
204a1b55e2 Fix for Issue #19 2018-05-15 00:34:37 +01:00