我有数据查询,想要创建动态linq/lambda
表达式,我可以在entity collection
上运行。不确定如何使用表达式构建器执行此操作。如果可能的话,请提供一些例子。
例如,我有查询
从person.name ='Joe'
的人中选择person.name,person.surname
我有所有人的实体集合。但是不想激发查询而是想将此查询转换为lambda并在人员集合上运行。这样可以避免服务器调用。
linq/lambda
表达式
来自person.id ='Joe'select person.name;
的人
答案 0 :(得分:0)
最好使用方法语法而不是查询语法 例如,而不是来自person.Name ==“Test”的人的人 使用People.Where(person => person.Name ==“Test”);
然后你可以添加对Mono.CSharp.DLL的引用,然后使用Evaluator类轻松地编译和运行C#代码,而不会过多地降低性能。
然后用C#字符串编译并运行LINQ查询,并使用Evaluator调用该字符串。
您也可以使用eval函数在JavaScript代码中看到此方法。
如果需要其他信息,请告诉我
祝你好运答案 1 :(得分:0)
LINQ
var xxx = from p in person
where p.Name equals "Joe"
select p;
的Lamda
var lambda = Person.Where(m=> m.Name == "Joe");
对于教程