表达式树(expression tree)是用树形数据结构来表示代码逻辑运算的技术,在运行时访问逻辑运算的结构。
1、可以从Lambda表达式生成的表达式树:
Expression<Func<TBook, bool>> e1 = b => b.Price > 5;
编译器会把 b => b.Price > 5构建成Expression的表达式树对象。
var e2 = db.TBooks.Where(e => e.Price > 5);通过硬编码VS也会重载出Expression类型。
2、Fun和Expression的区别
Func<TBook, bool> f1 = b => b.Price > 5 || b.AuthorName.Contains("yy");
Expression<Func<TBook, bool>> a1 = b => b.Price > 5 || b.AuthorName.Contains("yy");
Console.WriteLine(f1);
Console.WriteLi