Skip to content

Commit 741ecf0

Browse files
committed
Fixed DataGrid DoesNotContains filter throws No coercion operator is defined between types ‘System.String’ and ‘System.Boolean’
1 parent 90ab2e4 commit 741ecf0

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

Radzen.Blazor.Tests/ExpressionSerializerTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,5 +312,12 @@ public void Serializes_ComplexExpressionWithProperties()
312312
Expression<Func<TestEntity, bool>> expr = e => e.Age > 18 && e.Tags.Contains("Member") || e.Address.City == "London";
313313
Assert.Equal("e => (((e.Age > 18) && e.Tags.Contains(\"Member\")) || (e.Address.City == \"London\"))", _serializer.Serialize(expr));
314314
}
315+
316+
[Fact]
317+
public void Serializes_NotContains()
318+
{
319+
Expression<Func<TestEntity, bool>> expr = e => !e.Tags.Contains("Member");
320+
Assert.Equal("e => (!(e.Tags.Contains(\"Member\")))", _serializer.Serialize(expr));
321+
}
315322
}
316323
}

Radzen.Blazor/ExpressionSerializer.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,9 @@ protected override Expression VisitUnary(UnaryExpression node)
138138
{
139139
if (node.NodeType == ExpressionType.Not)
140140
{
141-
_sb.Append("(!");
141+
_sb.Append("(!(");
142142
Visit(node.Operand);
143-
_sb.Append(")");
143+
_sb.Append("))");
144144
}
145145
else if (node.NodeType == ExpressionType.Convert)
146146
{

0 commit comments

Comments
 (0)