想知道是否有办法获取由LINQ“查询”语法表达式产生的lambda表达式。
给定:
var query = from c in dc.Colors
where c.ID == 213
orderby c.Name, c.Description
select new {c.ID, c.Name, c.Description };
有没有办法获取生成的“lambda”代码/表达式?
var query = dc.Colors
.Where(c => c.ID == 213)
.OrderBy(c => c.Name)
.ThenBy(c => c.Description)
.Select(c => new {c.ID, c.Name, c.Description, });
我知道这些都是非常简单的例子,C#编译器在编译代码时会从查询表达式生成lambda表达式。是否有任何方法可以获得该表达式的副本?
我希望将其用作培训工具,帮助我的一些团队成员更好地理解lambda表达式。此外,我已经使用了Linq Pad,但最好能在不使用第三方工具的情况下完成。
.AsQueryable()
添加到第一个可枚举对象来实现这一点。 - Chris