需要动态的做多表查询,使用Join:
- C# code
var query = people.AsQueryable().Join(pets, person => person, pet => pet.Owner, (person, pet) => new { OwnerName = person.Name, Pet = pet.Name });
想问一下,如果需要的参数都有了的话,上边这方法需要的三个lambda表达式要如何动态的生成呢?
注:网上的文章我也都看过了,可是,像pet => pet.Owner这个表达式没有例子,都是pet => pet.Owner > 010这个样子的。
还有要请教一下,就我这个问题大家有什么更优的方案么?
------解决方案--------------------
pet => pet.Owner
相当于
- C# code
User foo(Pet pet){ return pet.Owner; //假设Owner是一个User型的对象}