diff --git a/src/JsonApiDotNetCore/QueryParameterServices/FilterService.cs b/src/JsonApiDotNetCore/QueryParameterServices/FilterService.cs index ae9fbfaa15..4c10cb099c 100644 --- a/src/JsonApiDotNetCore/QueryParameterServices/FilterService.cs +++ b/src/JsonApiDotNetCore/QueryParameterServices/FilterService.cs @@ -87,22 +87,9 @@ private List GetFilterQueries(string parameterName, StringValues pa // expected input = filter[id]=eq:1 var propertyName = parameterName.Split(QueryConstants.OPEN_BRACKET, QueryConstants.CLOSE_BRACKET)[1]; var queries = new List(); - // InArray case string op = GetFilterOperation(parameterValue); - if (op == FilterOperation.@in.ToString() || op == FilterOperation.nin.ToString()) - { - var (_, filterValue) = ParseFilterOperation(parameterValue); - queries.Add(new FilterQuery(propertyName, filterValue, op)); - } - else - { - var values = ((string)parameterValue).Split(QueryConstants.COMMA); - foreach (var val in values) - { - var (operation, filterValue) = ParseFilterOperation(val); - queries.Add(new FilterQuery(propertyName, filterValue, operation)); - } - } + var (_, filterValue) = ParseFilterOperation(parameterValue); + queries.Add(new FilterQuery(propertyName, filterValue, op)); return queries; } diff --git a/test/UnitTests/QueryParameters/FilterServiceTests.cs b/test/UnitTests/QueryParameters/FilterServiceTests.cs index ce62ac9ef2..d34a8c8830 100644 --- a/test/UnitTests/QueryParameters/FilterServiceTests.cs +++ b/test/UnitTests/QueryParameters/FilterServiceTests.cs @@ -43,6 +43,7 @@ public void CanParse_FilterService_FailOnMismatch() [Theory] [InlineData("title", "", "value")] [InlineData("title", "eq:", "value")] + [InlineData("title", "eq:", "val,ue")] [InlineData("title", "lt:", "value")] [InlineData("title", "gt:", "value")] [InlineData("title", "le:", "value")]