使用collection的属性与Expression Tree中的其余属性进行比较

问题描述

我正在尝试构建一个表达式树,该树需要从示例类的集合中生成计算属性!我是表达式树的新手,为此,我不得不使用表达式树方法,但无法弄清楚如何进行操作!

考虑示例类

class Sample
{
    int id;
    string s;
}

数据集

sampleData = {
    {id =1,s = "source",charRatio(Calculative prop) = 100 },{id =2,s = "test",charRatio = 66 },{id =3,{id =4,{id =5,{id =6,charRatio = 66 }
}
charRatio = obj.len / sourceObj.len   (Percentage)

//Without expression tree i would simply use something like
var sourceLen = sampleData.Where(x => x.id ==1).select(x => x.s).Length;
var result = sampleData.Where(x => x.s.Length/sourceLen > 50);

注意:charRatio是计算属性,在此添加以进行澄清!

我只需找到id = 1的属性并将其用于集合的每个属性,就可以解决linq的问题!

是否可以使用表达式树来做同样的事情?如果是的话,有人可以指导我正确的方向吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)