public class Lambda
{
public Lambda()
{
Expression<Func<int, int>> exp = x => x / 8;
int result = exp.Compile()(8888);
DisplayHelper.ConInline("Lambda 表达树结果:" + result);
//筛选姓名不为空,年龄>18的
Expression<Func<Persion, string>> exp3 = (Persion p) => !string.IsNullOrEmpty(p.name)&&p.age>18?"姓名:" + p.name + " 年龄:" + p.age+" 符合条件":p.name+"不符合条件";
//构造数据
List<Persion> list = new List<Persion>();
for (int i = 0; i < 5; i++)
{
Persion p1 = new Persion();
p1.name = "admin" + i;
p1.age = 15 + i;
list.Add(p1);
}
//筛选并打印结果
foreach (Persion p in list)
{
string str = exp3.Compile()(p);
DisplayHelper.ConInline(str);
}
}
}
public class Persion
{
public string name { get; set; }
public int age { get; set; }
}