If the server is queried with any predicate that uses the "in" operator on a field that is anything other than a string type then it throws an exception in this section in Breeze.Core.BinaryPredicate
else if (op == BinaryOperator.In) {
// TODO: need to generalize this past just 'string'
var mi = TypeFns.GetMethodByExample((List list) => list.Contains("abc"), expr1.Type);
return Expression.Call(expr2, mi, expr1);
}
This is because mi is List.Contains() but expr1 and expr2 are of type List where T is not a string.
If the server is queried with any predicate that uses the "in" operator on a field that is anything other than a string type then it throws an exception in this section in Breeze.Core.BinaryPredicate
else if (op == BinaryOperator.In) { // TODO: need to generalize this past just 'string' var mi = TypeFns.GetMethodByExample((List list) => list.Contains("abc"), expr1.Type);
return Expression.Call(expr2, mi, expr1);
}
This is because mi is List.Contains() but expr1 and expr2 are of type List where T is not a string.
My change should work for any T.