【发布时间】:2011-04-14 06:09:28
【问题描述】:
我目前正在寻找一种方法,可以在运行时根据用户输入为我的 Linq to SQL 查询构建 lambda 表达式。我一直在网上四处寻找,但找不到任何有用的东西。如果有人可以告诉我如何做到这一点或有任何好的文章,请告诉我。非常感谢!
例子:
假设我有这个 Linq 查询:
var loc = (from l in Entity.Locations
select l).Where(a => a.LocationId > 5);
这个表达式a => a.LocationId > 5 可以在运行时构建吗?取决于用户是否选择了 LocationId。如果用户选择了名称,那么它将是a => a.Name == "bla"。
我看到了 Scott 的一篇文章,但我更喜欢一个允许我创建强类型表达式的解决方案,我可以在编译时检测到任何可能的错误。
任何信息将不胜感激。
谢谢。
【问题讨论】:
标签: linq linq-to-sql lambda expression-trees