diff --git a/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableFilterInterceptor.cs b/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableFilterInterceptor.cs index 2ed5dc07822..de9c10b9c4b 100644 --- a/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableFilterInterceptor.cs +++ b/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableFilterInterceptor.cs @@ -7,6 +7,7 @@ using HotChocolate.Data.Projections.Expressions; using HotChocolate.Data.Projections.Expressions.Handlers; using HotChocolate.Execution.Processing; +using HotChocolate.Language; using HotChocolate.Types; using static HotChocolate.Data.ErrorHelper; using static HotChocolate.Data.Filters.Expressions.QueryableFilterProvider; @@ -40,7 +41,8 @@ public class QueryableFilterInterceptor out IReadOnlyDictionary? coercedArgs) && coercedArgs.TryGetValue(argumentName, out var argumentValue) && argumentValue.Argument.Type is IFilterInputType filterInputType && - argumentValue.ValueLiteral is {} valueNode) + argumentValue.ValueLiteral is {} valueNode && + valueNode is not NullValueNode) { QueryableFilterContext filterContext = argumentVisitor(valueNode, filterInputType, false); diff --git a/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableSortInterceptor.cs b/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableSortInterceptor.cs index 3e7ecaa98e8..dd03ffa0278 100644 --- a/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableSortInterceptor.cs +++ b/src/HotChocolate/Data/src/Data/Projections/Expressions/Interceptor/QueryableSortInterceptor.cs @@ -6,6 +6,7 @@ using HotChocolate.Data.Sorting; using HotChocolate.Data.Sorting.Expressions; using HotChocolate.Execution.Processing; +using HotChocolate.Language; using HotChocolate.Types; using static HotChocolate.Data.ErrorHelper; using static HotChocolate.Data.Sorting.Expressions.QueryableSortProvider; @@ -41,7 +42,8 @@ public class QueryableSortInterceptor argumentValue.Argument.Type is ListType lt && lt.ElementType is NonNullType nn && nn.NamedType() is ISortInputType sortInputType && - argumentValue.ValueLiteral is {} valueNode) + argumentValue.ValueLiteral is {} valueNode && + valueNode is not NullValueNode) { QueryableSortContext sortContext = argumentVisitor(valueNode, sortInputType, false); diff --git a/src/HotChocolate/Data/src/Data/Sorting/Visitor/SortVisitorBase`2.cs b/src/HotChocolate/Data/src/Data/Sorting/Visitor/SortVisitorBase`2.cs index 93fde2752da..ea0b37e3513 100644 --- a/src/HotChocolate/Data/src/Data/Sorting/Visitor/SortVisitorBase`2.cs +++ b/src/HotChocolate/Data/src/Data/Sorting/Visitor/SortVisitorBase`2.cs @@ -46,7 +46,8 @@ protected override ISyntaxVisitorAction Enter(IValueNode node, TContext context) { base.Enter(node, context); - if (context.Fields.Peek() is ISortField field && + if (node is not NullValueNode && + context.Fields.Peek() is ISortField field && field.Type is SortEnumType sortType && node is EnumValueNode enumValueNode) {