System.Linq.Dynamic.Core 解析错误

System.Linq.Dynamic.Core parsing error

我有一个简单的 class 和一个 int 属性 叫做 Int:

public class TestObject
    {
        public int Int { get; set; }
    }

和wherePredicate "Int >= 90"

当我尝试将它与 IQueryable.Where(wherePredicate) 一起使用时,出现错误:System.Linq.Dynamic.Core.Exceptions.ParseException: '.'或 '(' 或预期的字符串文字

当我将 wherePredicate 更改为 "It.Int >= 90" - 按预期工作。

Int 是保留关键字。

使用不同的 属性 名称:

void Main()
{
    var l = new List<TestObject>();
    var q = l.AsQueryable();
    var result = q.Where("X >= 90");

    result.Dump(); // LINQPad
}

public class TestObject
{
    public int X { get; set; }
}