EF 或者 Linq中动态拼接参数
可以通过动态拼接使用表达式树,来拼接参数 Expression Tree。作为Where的参数。
可以先写一个固定的表达式树,通过 ExpressionTreeToString 来查看生成的代码是什么样子的。
也有一些辅助的代码拼接库,可以简化这个流程
表达式树基本介绍:相关表达式树的代码都可以看看
Part3-41:什么是表达式树,Expression和Func的区别_哔哩哔哩_bilibili
Part3-43:通过代码动态构造表达式树_哔哩哔哩_bilibili
最后:如果拼接表达式树太复杂,可以使用拼接字符串的方式,用
Search · linq.dynamic · GitHub
Dynamic LINQ (dynamic-linq.net)
这种方式来实现